1.练习:
(1)设计一个表示学生的类,该类具有表示姓名的属性name和表示年龄的属性age,同时还具有表示说话行为的方法speak(),用于输出学生的姓名和年龄。
class Student{
String name;
int age;
void speak() {
System.out.println("我的名字是 “+name+”,今年 "+age+“岁”);
}
}
2.自己定义一个Phone类,在类中定义brand和price属性,定义call()方法
public class Phone {
String brand;
double price;
void call(){
System.out.println(“hi,how are you doing”);
}
}
3.创建三个学生对象,它们的引用变量分别是s1、s2和s3,首先分别使用s1和s2引用,为name和age赋值,然后调用speak()方法,最后将s2变量赋值给s3, s3也调用speak()方法
public class Example01 {
public static void main(String [] args) {
Student s1 = new Student();
s1.name=“张三”;
s1.age=19;
s1.speak();
Student s2 = new Student();
s2.name=“李四”;
s2.age=20;
s2.speak();
Student s3 = new Student();
s3=s2;
s3.speak();
}
}
4.使用private关键字对成员变量name和age进行私有化,同时分别提供一个setName(String n)和setAge(int a)方法用于外界的访问,其中setAge(int a)中需要对age进行判断
(1)定义Example02类
public class Example02 {
public static void main(String[] args) {
Student s1 = new Student();
s1.name = “小新”;
s1.age = -30;
s1.speak();
}
}
(2)对Student类进行封装
class Student {
private String name = “张三”;
private int age = 19;
public String getName() {
return name;
}
public void setName(String n) {
name = n;
}
public int getAge() {
return age;
}
public void setAge(int a) {
// 对传入的参数进行检查
if(a < 0){
System.out.println(“设置的年龄不合法”);
}else{
age = a;
}
}
void speak() {
System.out.println(“我的名字是” + name + “,今年” + age + “岁”);
}
}
public class Example02 {
public static void main(String[] args) {
Student s1 = new Student();
s1.setName(“小新”);
s1.setAge(-30);
s1.speak();
}
}
5.定义Example03类,在类的main()方法中创建Division对象,分别调用setDividend(int mDividend)和setDivisor(int mDivisor)方法给两个私有属性dividend和divisor赋值,然后打印出dividend和divisor的结果
(1)定义Division类
public class Division {
private int dividend = 1;
private int divisor = 1;
public void setDividend(int mDividend) {
dividend = mDividend;
}
public int getDividend() {
return dividend;
}
public void setDivisor(int mDivisor) {
if (mDivisor == 0) {
System.out.println(“除数不能为零”);
} else {
divisor = mDivisor;
}
}
public int getDivisor() {
return divisor;
}
}
(2)定义Example03类
public class Example03{
public static void main(String[] args) {
Division division = new Division();
division.setDividend(10);
division.setDivisor(0);
int dividend = division.getDividend();
int divisor = division.getDivisor();
System.out.println(dividend / divisor);
}
}
6.使用有参构造方法完成对象属性的初始化
(1)对Student类进行修改
class Student {
int age;
public Student(int mAge) {
age = mAge;
}
}
(2)定义Example04类
public class Example04 {
public static void main(String[] args) {
Student s1 = new Student(20);
System.out.println(“age属性的值为:”+s1.age);
}
}