第十周JAVA

1、请按照以下要求设计一个学生类Student,并进行测试。
要求如下:
1)Student类中包含姓名、成绩两个属性
2)分别给这两个属性定义两个方法,一个方法用于设置值,另一个方法用于获取值.
3)Student类中定义一个无参的构造方法和一个接收两个参数的构造方法,两个参数分别为姓名和成绩属性赋值
4)在测试类中创建两个Student对象,一个使用无参的构造方法,然后调用方法给姓名和成绩赋值,一个使用有参的构 造方法,在构造方法中给姓名和成绩赋值

public class student {
    String name;
    int mark;
    public student() {
    
    }
    public student(String str, int mark) {//有参构造
        this.name=str;
        this.mark=mark;
        
    }

    void set(String str,int mark) {
        this.name=str;
        this.mark=mark;
                
    }
    void get() {
        System.out.println("该学生姓名为"+name);
        System.out.println("该学生成绩为"+mark);
    }

}
public class test {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        student A=new student();
        A.set("xiaoming", 90);
        A.get();
        student B=new student("xiaohong",80);
        B.get();
    

    }

}

2、请编写一个程序,该程序由两个类组成,一个Person类,一个Test类。在Person类中定义一个无参构造方法,里面 输出一句话:”无参的构造方法被调用了...”。并在测试类中进行测试。

public class Person {
    /*
     * 2、请编写一个程序,该程序由两个类组成,一个Person类,一个Test类。 在Person类中定义一个无参构造方法,里面
     * 输出一句话:”无参的构造方法被调用了...”。 并在测试类中进行测试。
     */
    public Person() {
        System.out.println("无参的构造方法被调用了...");
    }

}
public class Test {
    public static void main(String[] args) {
        Person p = new Person();
    }

}

3. 使用java类描述一个车类,车都具备名字、颜色两个属性,还具备跑的功能。 请设计一个汽车类Car,该类中包含 两个属性姓名(name)、颜色(color),一个用于描述汽车跑的run()方法。

public class Car {
    String name;
    String color;
    public Car(){
        this("奔驰","黑色");
        
    }
    public Car(String name, String color) {
        super();
        this.name = name;
        this.color = color;
    }
    public void run(){
        System.out.println(name+color+"在行驶");
    }
public static void main(String[] args) {
    Car c=new Car();
    c.run();
}
}

4. 编写一个类,类中定义一个静态方法,用于求两个整数的和。 请按照以下要求设计一个测试类Demo,并进行测试。  要求如下: 
  1)Demo类中有一个静态方法get(int a,int b)该方法用户返回参数a、b两个整数的和; 
  2)在main()方法中调用get方法并输出计算结果。

public class Demo {
    public static void main(String[] args) {
        Demo a = new Demo();
        int c = a.get(1,2);
        System.out.println(c);
    }
    public int get(int a,int b) {
        return a+b;
    }
}

5.说一下什么是封装, 使用封装的好处。什么是get,set访问器

   封装是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。

   封装的好处:使代码具有独立的作用域,不被外界所访问,加强了使用代码的安全性

   get访问器:将变量变成私有化进行获取该变量的值

   set访问器:将变量变成私有化进行设置该变量的值