16012009徐小东_考核二

https://gitee.com/x-h-b/16012009xuxiaodong_kaoheer

7-1 学生类-构造函数 

定义一个有关学生的Student类,内含类成员变量: String name、String sex、int age,所有的变量必须为私有(private)。

1.编写有参构造函数:

能对name,sex,age赋值。

2.覆盖toString函数:

按照格式:类名 [name=, sex=, age=]输出。使用idea自动生成,然后在修改成该输出格式

3.对每个属性生成setter/getter方法

4.main方法中

•输入1行name age sex , 调用上面的有参构造函数新建对象。

输入样例:

tom 15 male

输出样例:

Student [name='tom', sex='male', age=15]

  1.程序设计思路:定义一个Student类,内含成员变量 String name、String sex、int age,所有的变量必须为私有(private)。对name,sex,age赋值。覆盖toString函数。main方法中调用有参构造函数新建对象。

import java.util.Scanner;
class Student{       //定义类Student
    private String name;//成员变量name,sex,age
    private String sex;
    private int age;
    public Student(){
        this.name = "sss";
        this.sex = "male";
        this.age = 20;
    }
    public void toString(String n, int a, String s){    //定义tostring方法
        this.name = n;
        this.sex = s;
        this.age = a;
        System.out.println("Student [name='"+this.name+"', sex='"+this.sex+"', age="+this.age+"]");//按格式输出
    }
}
public class Test{            //定义Main调用有参函数
    public static void main(String[] args){
        Scanner reader = new Scanner(System.in);
        String n = reader.next();
        int a = reader.nextInt();
        String s = reader.next();
        Student tt = new Student();
        tt.toString(n,a,s);
    }
}

  

  2.运用知识点:定义类,所有成员变量为私有,编写有参构造方法,定义tostring方法,Main调用有参函数,子类与继承。

  3.运行结果:

 

 

 
7-2 定义类

请补充以下代码,完成输出要求

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
                Scanner in = new Scanner(System.in);
                int a,b,c,d,e;
                a = in.nextInt();
                b = in.nextInt();
                c = in.nextInt();
                d = in.nextInt();
                e = in.nextInt();
                RR rr = new RR();
                double dd = rr.fun(a,b,c,d,e);
                System.out.printf("%.2f",dd);
    }
}
class RR{
    public int fun (int a,int b,int c,int d,int e){
      return (a+b+c+d+e)/5;
    } 
}

  1.程序设计思路:补充代码要求输出5个整数的平均值,保留小数点后两位。程序中少了计算五个数的平均值,应该在类RR中添加。

  2.使用到的知识点:要求输入为正整数,因此定义a,b,c,d,e为整型,返回 为    

return (a+b+c+d+e)/5;
  3.运行结果:


7-3 横平竖直

程序填空题。根据题目要求完善下面的代码。请提交完整代码。 一个木块如果高度比宽度大,我们说它是竖着放的,否则我们说它是平放的。 读入一个木块的高度和宽度。如果它是平放的,则输出A,否则输出B

输入格式:

输入在一行中给出2个绝对值不超过1000的正整数A和B。

输出格式:

在一行中输出一个字符A或者B。

import java.util.Scanner;
public class Main{
    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        int height, width;
        char status;
        height = in.nextInt();
        width = in.nextInt();
        Board board = new Board(height, width);
        status = board.getStatus();
        System.out.print(status);
    }
}
class Board{
   int height, width;
   public Board(int height, int width){
       this.height = height;
       this.width = width;
   }
   public char getStatus(){
     int A=1;int B=0;
       if(height<=width){
          return status(1);
       }else{
         return status(1.0);
       }
   }
   public char status(double rate){
     System.out.println("B");
     return 0;

   }
   public char status(int rate){
     System.out.println("A");
     return 0;

   }
}

  1.程序设计思路:要求输出格式为A和B,所以定义A,B

  2.使用到的知识点:定义整型A,B  输出语句,方法重载,参数传值

  3.运行结果:

 

     

7-4 程序改错题2
public class Main {
	public static void main(String[] args) {
		Animal animal = new Dog();
		animal.shout();
		animal.run();
	}
}

class Animal {
	void shout() {
		System.out.println("animal shout!");
	}
	void run(){
	  System.out.println("animal run!");
	}
}

class Dog extends Animal {
	void shout() {
		super.shout();
		System.out.println("wangwang……");
	}

	void run() {
		System.out.println("Dog is running");
	}
}

  

    1.程序设计思路:Main中有animal.shout()和animal.run()。类中有void shout但没有void run

  2.使用到的知识点:定义类的方法,子类的继承

  3.运行结果:

       

 

学习内容 代码(行) 博客(字)
类,构造方法与对象,实例成员与类成员,子类与父类,子类继承子类与对象,super关键字 460 800

 

 

posted on 2018-10-13 10:32  徐小东  阅读(360)  评论(0编辑  收藏  举报

导航