1、请按照以下要求设计一个学生类Student,并进行测试。 要求如下: 1)Student类中包含姓名、成绩两个属性 2)分别给这两个属性定义两个方法,一个方法用于设置值,另一个方法用于获取值. 3)Student类中定义一个无参的构造方法和一个接收两个参数的构造方法,两个参数分别为姓名和成绩属性赋值 4)在测试类中创建两个Student对象,一个使用无参的构造方法,然后调用方法给姓名和成绩赋值,一个使用有参的构 造方法,在构造方法中给姓名和成绩赋值
class Student{ String name; double number; public Student(){ } public Student(String NAME,double number){ this.name=NAME; this.number=number; } void set(String NAME,double number){ this.name=NAME; this.number=number; } void get(){ System.out.println("该学生姓名为:"+name); System.out.println("该学生成绩为:"+number); } }
public class Test { public static void main(String[] args) { // TODO 自动生成的方法存根 Student SC=new Student(); SC.set("wang xiansheng",82); SC.get(); Student S=new Student("li aiguo",93); S.get(); } }
2、请编写一个程序,该程序由两个类组成,一个Person类,一个Test类。在Person类中定义一个无参构造方法,里面 输出一句话:”无参的构造方法被调用了...”。并在测试类中进行测试。
class Person{ public Person() { System.out.println("无参的构造方法被调用了"); } }
public class Test { public static void main(String[] args) { Person A=new Person(); A.getClass(); } }
3. 使用java类描述一个车类,车都具备名字、颜色两个属性,还具备跑的功能。 请设计一个汽车类Car,该类中包含 两个属性姓名(name)、颜色(color),一个用于描述汽车跑的run()方法。
class Car{ String name; String color; public void run() { System.out.println("车子跑的非常快!"); } }
public class Test { public static void main(String[] args) { Car sc=new Car(); sc.color="baise"; sc.name="baoma"; System.out.println("名字:"+sc.name+"颜色"+sc.color ); sc.run(); } }
4. 编写一个类,类中定义一个静态方法,用于求两个整数的和。 请按照以下要求设计一个测试类Demo,并进行测试。 要求如下: 1)Demo类中有一个静态方法get(int a,int b)该方法用户返回参数a、b两个整数的和; 2)在main()方法中调用get方法并输出计算结果。
class Demon1{ int a; int b; public int sum(int a,int b) { return a+b; } }
public class Test { public static void main(String[] args) { Demon1 sc=new Demon1(); sc.sum(22, 3); System.out.println(sc.sum(22, 3)); } }
5.说一下什么是封装, 使用封装的好处。什么是get,set访问器
1>封:封闭,装:装起来,将具体的实现细节装到一个容器中,并封闭起来,防止容器外部直接访问容器内部的实现细节,仅公开暴露指定的访问路径; 2>把类的细节与外界隔离起来,从而实现数据项和方法的隐藏。只允许外部对类作有限的访问,开发者可以改变类内部的工作方式而不用担心会影响到客户端程序员,只要向外部暴露出来的接口不改变,内部代码就可以自由改变,而不对使用该类的程序产生影响。这是隔离性的体现,同时也是实现高内聚,低耦合的最根本的思想之一。 可以对成员进行更精确的控制。 3>set()是给属性赋值的,get()是取得属性值的 被设置和存取的属性一般是私有 主要是起到封装的作用,不允许直接对属性操作