代码改变世界

day07作业.

2018-07-19 19:24  好好学习哟  阅读(232)  评论(0编辑  收藏  举报

一.面向对象

1:局部变量和成员变量的区别?
a:局部变量在方法上或者中 声明,成员变量在类中方法外声明
b:局部变量存在栈中,成员变量在堆中
c:局部变量是没有默认初始化值使用前必须声明赋值,成员变量由默认初始化值
d:局部变量随着方法调用存在,随着方法的消失而消失。成员变量随着对象创建而存在,随着对象消失而消失。

2:匿名对象是什么?应用场景是什么?
匿名对象是没有名字的对象
应用场景仅仅只调用一次的时候。可以节省代码

3:封装是什么?java中封装的体现有哪些?请举例说明。
是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。

private。

class studentTest {
public static void main(String[] args) {
myStudent s1 = new myStudent();
s1.name = "大狗";
s1.setAge(11);

s1.gender = "男";
s1.speak();
}

}

class myStudent {
String name;
private int age;
String gender;
public void setAge(int a){
if (a > 0 && a < 200) {

age = a;
}else
System.out.println("你可以回火星了");
}
public int getAge(int a){
return age;
}
public void speak() {
System.out.println(name + " " + age + " " + gender);
}
}

 

4:this关键字是什么?this关键字的应用场景?

5:如何使用一个类的成员
对象名.成员变量
对象名.成员方法(...)

========================================================
========================================================

二. 内存图

画图操作:

1.一个对象的内存图

2.两个对象的内存图

3.三个引用两个对象的内存图


========================================================
========================================================

三. 自定义类

Student 类
class studentTest {
public static void main(String[] args) {
myStudent s1 = new myStudent();
s1.name = "大狗";
s1.age = 11;
s1.gender = "男";
s1.speak();
}

}

class myStudent {
String name;
int age;
String gender;
public void speak() {
System.out.println(name + " " + age + " " + gender);
}
}

Phone 类
class phoneTest {
public static void main(String[] args) {
myPhone p = new myPhone();
p.brand = "小米";
p.price = 2499;
p.info() ;
p.call();
p.messenge();
p.play();
}

}

class myPhone {
String brand;
int price;
public void info(){
System.out.println(brand + " " + price);
}

public void call() {
System.out.println("打电话 ");
}

public void messenge() {
System.out.println("发短信");
}
public void play() {
System.out.println("打游戏");
}

}

Car 类
class carTest {
public static void main(String[] args) {
carT c = new carT();
c.color = "blue";
c.num = 5;
c.run();
}
}
class carT {
String color;
int num;
public void run(){
System.out.println(color + " " + num);
}
}