第十周上机练习

1、请按照以下要求设计一个学生类Student,并进行测试。
要求如下:
1)Student类中包含姓名、成绩两个属性
2)分别给这两个属性定义两个方法,一个方法用于设置值,另一个方法用于获取值.
3)Student类中定义一个无参的构造方法和一个接收两个参数的构造方法,两个参数分别为姓名和成绩属性赋值
4)在测试类中创建两个Student对象,一个使用无参的构造方法,然后调用方法给姓名和成绩赋值,一个使用有参的构 造方法,在构造方法中给姓名和成绩赋值。
package calsswork;
import java.util.Scanner;
public class text1 {
    public static void main(String[] args) {
        window.Student=Student;
        Student s1 = new Student();
        s1.setName("aa");
        s1.getName();
        s1.setScore(90);
        s1.getScore();
        System.out.println(s1);
        Student s2 = new Student("bb", 85);
        System.out.println(s2);
    }
     
    String name;
    int score;
     
    public Student() {
     
    }
     
    public Student(String name, int score) {
        this.name = name;
        this.score = score;
    }
     
    public String getName() {
        return name;
    }
     
    public void setName(String name) {
        this.name = name;
    }
     
    public int getScore() {
        return score;
    }
     
    public void setScore(int score) {
        this.score = score;
    }
     
    public String toString() {
        return "Student [name=" + name + ", score=" + score + "]";
    }
}

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

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

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

package com.gyq.chapterOne;
public class Car {
    private String name;
    private String color;
    public Car(String a,String b) {
        this.name = a;
        this.color = b;
    }
    public String getName() {
        return name;
    }


    public void setName(String name) {
        this.name = name;
    }


    public String getColor() {
        return color;
    }


    public void setColor(String color) {
        this.color = color;
    }


    public void run() {
        System.out.println(color + "" + name + "性价比极高");
    }
    public static void main(String[] args) {
        Car a = new Car("法拉利", "黄色");
        a.run();
    }
}
4. 编写一个类,类中定义一个静态方法,用于求两个整数的和。 请按照以下要求设计一个测试类Demo,并进行测试。  要求如下: 
  1)Demo类中有一个静态方法get(int a,int b)该方法用户返回参数a、b两个整数的和; 
  2)在main()方法中调用get方法并输出计算结果。
package kkk;

public class lll {
    public static int get(int a, int b) {
        return a + b;
    }

    public static void main(String[] args) {
        int a = 10;
        int b = 10;
        System.out.println(get(a, b));
    }

}

5.说一下什么是封装, 使用封装的好处。什么是get,set访问器。
封装:将东西包装在一起,然后以新的完整的形式呈现出来(即将属性和方法封装到类里面,通过添加访问修饰符来限制访问权限,以达到信息隐藏的目的)

好处:隐藏实际细节,提供公共的访问方式
提高了代码的复用性
提高安全性 
封装原则
将不需要对外提供的内容都隐藏起来
把属性隐藏,提供公共方法对其访问。

get/set:

只带有get器的属性称为只读属性。无法对只读属性赋值。
只带有set器的属性称为只写属性。只写属性除作为赋值的目标外,无法对其进行引用。
同时带有get和set器的属性为读写属性。
在属性声明中,get和set器都必须在属性体的内部声明。

 

posted @ 2020-05-07 14:36  TIANM  阅读(133)  评论(0编辑  收藏  举报