• Java暑期学习第四十一天日报


    一、今日学习内容:

    今天练习实验二的习题。

    二、遇到的问题:

    无。

    三、明日计划:

    明天练习实验三的习题。

    今天学习的具体内容如下:

    1.学生类。

    定义一个学生类,设计私有数据成员:年龄 int age;姓名 string name;

    共有成员函数:带参数的初始化函数  Input(int a, string str);获取数据成员函数    Output();在主函数中定义一个有3个元素的对象数组并分别输入,然后输出对象数组的信息。

    public class student {
        private int age;
        private String name;
        public static void main(String []args) {
            int i;
            
            student []s= new student[3];
            s[0]=new student(16,"小花");
            s[1]=new student(17,"小黑");
            s[2]=new student(14,"大明");
            for(i=0;i<3;i++) {
                s[i].output();
            }
            
        }
        student(int a,String str){
            age=a;
            name=str;
        }
        public void output() {
            System.out.println("姓名:"+name);
            System.out.println("年龄:"+age);
        }
    
    }

    测试截图:

    2.点类

    先定义一个点类,类名为point,将其坐标定义为私有成员,定义五个共有成员函数完成点的输入、输出、返回x坐标、返回y坐标和返回z坐标。在主程序中定义该类的一个对象,做到能够输入坐标,输出坐标,并且输出到原点的距离。

    import java.lang.Math;
    import java.util.Scanner;
    public class point {
        private int x;
        private int y;
        private int z;
        public void setvalue(int a,int b,int c) {
            x=a;
            y=b;
            z=c;
        }
        public void output() {
            System.out.println("x="+x);
            System.out.println("y="+y);
            System.out.println("z="+z);
        }
        public int return_x() {
            return this.x;
        }
        public int return_y() {
            return this.y;
        }
        public int return_z() {
            return this.z;
        }
        public double length(point p) {
            double result;
            result=Math.sqrt(p.x*p.x+p.y*p.y+p.z*p.z);
            return result;
        }
        public static void main(String [] args) {
            System.out.println("请输入一个三维坐标点的值:");
            Scanner sc=new Scanner (System.in);
            int a=sc.nextInt();
            int b=sc.nextInt();
            int c=sc.nextInt();
            point p1=new point();
            p1.setvalue(a, b, c);
            System.out.println("x的值:"+p1.return_x());
            System.out.println("y的值:"+p1.return_y());
            System.out.println("z的值:"+p1.return_z());
            p1.output();
            double s=p1.length(p1);
            System.out.println("该点到原点的距离:"+s);
            
        }
    
    }

    测试截图:

    3.线段类

    在实验任务二的基础上,构造线段类line,其中私有数据成员为两个point对象(线段的起始点和终点),一个共有函数输入两个point类型数据成员,一个共有函数计算线段的长度。在主函数中调用line的两个共有函数完成点的输入和线段长度的输出。

    import java.lang.Math;
    import java.util.Scanner;
    public class point {
        protected int x;
        protected int y;
        protected int z;
        public void setvalue(int a,int b,int c) {
            x=a;
            y=b;
            z=c;
        }
        public void output() {
            System.out.println("x="+x);
            System.out.println("y="+y);
            System.out.println("z="+z);
        }
        public int return_x() {
            return this.x;
        }
        public int return_y() {
            return this.y;
        }
        public int return_z() {
            return this.z;
        }
        public double length(point p) {
            double result;
            result=Math.sqrt(p.x*p.x+p.y*p.y+p.z*p.z);
            return result;
        }
        public static void main(String [] args) {
            System.out.println("请输入一个三维坐标点的值:");
            Scanner sc=new Scanner (System.in);
            int a=sc.nextInt();
            int b=sc.nextInt();
            int c=sc.nextInt();
            point p1=new point();
            p1.setvalue(a, b, c);
            System.out.println("x的值:"+p1.return_x());
            System.out.println("y的值:"+p1.return_y());
            System.out.println("z的值:"+p1.return_z());
            p1.output();
            double s=p1.length(p1);
            System.out.println("该点到原点的距离:"+s);
            System.out.println("\n请输入第一个坐标点:");
            int a1=sc.nextInt();
            int b1=sc.nextInt();
            int c1=sc.nextInt();
            System.out.println("\n请输入第二个坐标点:");
            int a2=sc.nextInt();
            int b2=sc.nextInt();
            int c2=sc.nextInt();
            line l=new line();
            point p2=new point();
            point p3=new point();
            p2.setvalue(a1, b1, c1);
            p3.setvalue(a2, b2, c2);
            l.setvalie_p(p2, p3);
            l.length_line(p2, p3);
        }
    
    }
    class line extends point{
        private point p1;
        private point p2;
        public void setvalie_p(point s1,point s2) {
            p1=s1;
            p2=s2;
        }
        public void length_line(point s1,point s2) {
            double result;
            result=Math.sqrt((s1.x-s2.x)*(s1.x-s2.x)+(s1.y-s2.y)*(s1.y-s2.y)+(s1.z-s2.z)*(s1.z-s2.z));
            System.out.println("这两点间的距离为:"+result);
        }
        
    }

    测试截图:

  • 相关阅读:
    [笔记].怎样给μC/OSII的任务传递参数
    [原创].怎样在WPS上实现代码语法高亮
    [笔记].Nios II 9.1的sys/alt_irq.h与之前版本的区别
    [原创].使用Nios II 9.1中的Flash Programmer无法固化程序到EPCS上
    [笔记].浅析在Nios II中的两种寄存器映射方法的异同
    [原创].怎样在Nios II上跑μC/OSII
    [转载].基于Nios II的DMA传输
    [转载].SSRAM、SDRAM和Flash简要介绍
    [笔记].一种独立键盘消抖的Verilog写法
    [笔记].I2C札记
  • 原文地址:https://www.cnblogs.com/Lizhichengweidashen/p/13510541.html
Copyright © 2020-2023  润新知