第十周上机练习

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

package YLL;
public class Student {
    String name=new String("学生未命名");
    double achievement;
    public Student(){
        
    }
    public Student(String ssn,double achievement){
        this.name=ssn;
        this.achievement=achievement;
    }
    void set(String ssn,double achievement){
        this.name=ssn;
        this.achievement=achievement;
    }
    void get(){
        System.out.println("学生姓名为: "+name);
        System.out.println("学生的成绩为: "+achievement);
    }
}
package YLL;
public class Mu {
    public static void main(String[] args) {
        Student M=new Student();
        M.set("张晓", 69);
        M.get();
        Student N=new Student("宋敏",89);
        N.get();
    }
}

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

package Qyu;
public class Person {
    public Person(){
        System.out.println("无参数的构造方法被调用了...");
    }
}
package Qyu;
public class Test {
    public static void main(String[] args) {
        Person p=new Person();
    }
}

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

package nj;
public class Car {
    private String name;
    private String color;
    private Car(String name,String color){
        this.name=name;
        this.color=color;
        run();
    }
    public void run(){
        System.out.println(color+"的"+name+"开走了!");
    }

    public static void main(String[] args) {
        new Car("奔驰","黑色");
    }
}

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

package PFF;
public class Demo {
    public static int get(int a,int b){
        return a+b;
    }
    
    public static void main(String[] args) {
        int result =Demo.get(5,4);
        System.out.println(result);
    }
}

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

封装:将对象中的实现细节隐藏,不被外界直接访问。
即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别。
封装的好处:提高代码的安全性。
get器:只带有get器的属性称为只读属性。无法对只读属性赋值。该方法具有属性类型的返回值以及属性相同的修饰符。
set器: 只带有set器的属性称为只写属性。只写属性除作为赋值的目标外,无法对其进行引用。具有单个属性类型的值参数,以及包含属性相同的修饰符。
同时带有get和set器的属性为读写属性。
原文地址:https://www.cnblogs.com/LILY321/p/12842129.html