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器都必须在属性体的内部声明。