Java学习之面向对象四
Posted Vanguard
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java学习之面向对象四相关的知识,希望对你有一定的参考价值。
1、构造方法的格式是什么?有哪些注意事项?
权限修饰符 类名(参数列表){方法体}
注意事项:
? 构造方法没有返回值类型。也不需要写返回值。因为它是为构建对象的,对象创建完,方法就执行结束。
? 构造方法名称必须和类型保持一致。
? 构造方法没有具体的返回值。
2、构造方法可以重载吗? 里边可以有return语句吗?
可以重载 可以有return,但不能有返回。
3、给成员变量赋值有几种方式?有什么区别?
get/set
直接赋值
带参构造器赋值
初始化
static 代码块赋值
默认构造器赋值
4.编写一个完整的Person类,使用this关键字给成员变量进行赋值.
在测试类中测试
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
/**
* 编写一个完整的Person类,使用this关键字给成员变量进行赋值.
在测试类中测试
* @author vanguard
*
*/
public class Test01 {
public static void main(String[] args) {
Person p = new Person("张三", 30);
System.out.println(p.getName() + "---" +p.getAge());
}
}
5、根据需求,完成如下代码(按照标准格式写),并在测试类中进行测试。
标准格式包含: 私有属性 无参构造 有参构造 setter 和getter 需求中的方法
需求一:
员工类Employee
属性:姓名name,工号id,工资salary
行为:显示所有成员信息的方法show()
需求二:
动物类Animal
属性:姓名name,年龄age
行为:吃饭eat,睡觉sleep
需求三:
人类Person
属性:姓名name,年龄age,性别gender
行为:学习study,睡觉sleep
/**
员工类Employee
属性:姓名name,工号id,工资salary
行为:显示所有成员信息的方法show()
* @author vanguard
*
*/
public class Employee {
private String name;
private String Id;
private int salary;
public Employee() {
}
public Employee(String name, String Id, int salary) {
this.name = name;
this.Id = Id;
this.salary = salary;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getId() {
return Id;
}
public void setId(String id) {
Id = id;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
public void show() {
System.out.println(name + "---" + Id + "---" + salary);
}
}
/**
* 动物类Animal
属性:姓名name,年龄age
行为:吃饭eat,睡觉sleep
* @author vanguard
*
*/
public class Animal {
private String name;
private int age;
public Animal() {}
public Animal(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void eat() {
System.out.println("动物吃饭");
}
public void sleep() {
System.out.println("动物睡觉");
}
}
/**
* 动物类Animal
属性:姓名name,年龄age
行为:吃饭eat,睡觉sleep
* @author vanguard
*
*/
public class Animal {
private String name;
private int age;
public Animal() {}
public Animal(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void eat() {
System.out.println("动物吃饭");
}
public void sleep() {
System.out.println("动物睡觉");
}
}
/**
* 测试类
* @author vanguard
*
*/
public class Test {
public static void main(String[] args) {
Employee em = new Employee("张三", "001", 5000);
em.show();
Animal a = new Animal("小白", 2);
a.eat();
a.sleep();
Person p = new Person("李四", 20, "男");
p.study();
p.sleep();
}
}
以上是关于Java学习之面向对象四的主要内容,如果未能解决你的问题,请参考以下文章