java5.7作业

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

 1 package pro1;
 2 public class Student {
 3     String name=new String("未命名"); 
 4     int score;                     
 5     public Student(){  
 6     }
 7   public Student(String a,int score){ 
 8       this.name=a;
 9       this.score=score;
10 }
11   public void set(String a,int score){  
12       this.name=a;
13       this.score=score;
14   }
15   public void get(){                   
16       System.out.println("姓名:"+name);
17       System.out.println("成绩:"+score);
18   }
19 }
20 package test;
21 
22 public class Student1 {
23     public static void main(String[] args) {
24     Student s=new Student();
25     s.set("张三",79);
26     s.get();
27     Student s1=new Student("李四",98);
28     s1.get();
29     }
30 }

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

 1 package pro1;
 2 
 3 public class Person {
 4 
 5     public void speak() {
 6         System.out.println("无参的构造方法被调用");
 7     }
 8 }
 9 
10 package pro2;
11 
12 public class Test {
13 
14     public static void main(String[] args) {
15         Person p = new Person();
16         p.speak();
17     }
18 
19 }

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

 1 package pro1;
 2 
 3   public class Java {
 4         String name;
 5         String color;
 6     public void run(){
 7     System.out.println("车的名字:"+name+"车的颜色:"+color);
 8       }
 9 }
10 
11 package text;
12 
13 public class Car {
14 
15     public static void main(String[] args) {
16         Java j = new Java();
17           j.name = "奔驰";
18           j.color = "白色";
19           j.run();
20          }
21 }

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

 1 package pro1;
 2 
 3 public class Demo {
 4     public static int get(int a, int b) {
 5         int c = a + b;
 6         return c;
 7     }
 8 }
 9 
10 package text;
11 
12 public class Person {
13 
14     public static void main(String[] args) {
15         int x = Demo.get(5, 8);
16         System.out.println("结果为:" + x);
17     }
18 }

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

封装:将东西包装在一起,然后以新的完整的形式呈现出来(即将属性和方法封装到类里面,通过添加访问修饰符来限制访问权限,以达到信息隐藏的目的)

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

get/set:

只带有get器的属性称为只读属性。无法对只读属性赋值。
只带有set器的属性称为只写属性。只写属性除作为赋值的目标外,无法对其进行引用。
同时带有get和set器的属性为读写属性。
在属性声明中,get和set器都必须在属性体的内部声明。
posted @ 2020-05-07 13:52  潘宇航  阅读(190)  评论(0编辑  收藏  举报