跟着下面这些题目,你将对构造方法有一个全面的了解。
1、构造方法的格式是什么?有哪些注意事项?
格式:权限修饰符 类名(参数列表){方法体}
例:public person(){
}
注意事项:1.构造方法中没有返回值,不能写void或者其他返回值类型。
2.构造方法即使不写,Java中也会默认一个空的构造放法。如public person(){}
3.构造方法中的方法名必须和类名一模一样。
2、构造方法可以重载吗? 里边可以有return语句吗?
可以重载。例如:public person(){ } 和public person (int a)一个参数为空,一个需要参数。
可以有return语句,但不能有返回值。例:return ;
3、给成员变量赋值有几种方式?有什么区别?
1.定义私人成员变量,需要set、get方法调用赋值
2.直接定义赋值
3.带参数的构造器赋值,在新建类型对象的同时就要赋值。
4.在继承类中使用this. 赋值。
4.编写一个完整的Person类,使用this关键字给成员变量进行赋值.在测试类中测试。
package cn.demo01;
/*
* 编写一个完整的Person类,使用this关键字给成员变量进行赋值.
在测试类中测试
*/
public class Person {
public Person(){
}
private String name;
private int age;
public void setname(String name){
this.name = name;
}
public void setage(int age){
this.age = age;
}
public String getname(){
return this.name;
}
public int getage(){
return this.age;
}
}
package cn.demo01;
public class Test {
public static void main(String[] args) {
Person p = new Person();
p.setname("旺财");
p.setage(18);
System.out.println(p.getname());
System.out.println(p.getage());
}
}
5、根据需求,完成如下代码(按照标准格式写),并在测试类中进行测试。
标准格式包含: 私有属性 无参构造 有参构造 setter 和getter 需求中的方法
需求一:
员工类Employee
属性:姓名name,工号id,工资salary
行为:显示所有成员信息的方法show()
package cn.demo02;
/*
* 定义员工类
*/
public class Employee {
private String name;
private String id;
private double money;
//构造方法
public Employee(){
super();
}
public Employee(String name,String id,double money){
super();
this.id = id;
this.name = name;
this.money = money;
}
public void show(){
System.out.println("姓名: "+this.name+" 工号: "+this.id+" 工资: "+this.money);
}
/*
*私有属性 set/get方法
*/
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public double getMoney() {
return money;
}
public void setMoney(double money) {
this.money = money;
}
}
package cn.demo02;
public class Test {
public static void main(String[] args) {
Employee e = new Employee("张三","A008",56889);
e.show();
}
}
需求二:
动物类Animal
属性:姓名name,年龄age
行为:吃饭eat,睡觉sleep
不想写了,同上