第四章 面向对象-上
文章目录
- 第四章 面向对象-上
- 1. 面向对象思想编程内容的三条主线分别是什么?
- 2. 谈谈你对面向对象中类和对象的理解,并指出二者的关系?
- 3. 面向对象思想的体现一:类和对象的创建和执行操作有哪三步?
- 4.画出如下代码在执行时的内存分配情况?
- 5.类的方法内是否可以定义变量?是否可以调用属性?是否可以定义方法?是否可以调用方法?
- 6. 什么是方法的重载?
- 7.说明Java方法中的参数传递机制的具体体现?
- 8.谈谈return关键字的内存解析
- 9. 提供如下代码的内存解析
- 10.构造器的作用是什么?使用中有哪些点?
- 11.关于类的属性的赋值,有几种赋值的方式。谈谈先后顺序。
- 12. this关键字可以用来调用哪些结构,简单说明一下其使用。
- 13. Java中目前学习涉及到的四种权限修饰符都有什么?并说明各自的权限范围。
- 14. 创建Circle类,提供私有的radius属性,提供相应的get和set方法,提供求圆面积的方法。
1. 面向对象思想编程内容的三条主线分别是什么?
1.类及类的的成员:属性、方法、构造器;代码块、内部类
2.面向对象的三大特征:封装、继承、多态
3.其它关键字:this、super、abstract、interface、static、final、package、import
2. 谈谈你对面向对象中类和对象的理解,并指出二者的关系?
类:抽象的、概念上的内容
对象:实实在在存在的一个个体
对象由类派生出来的
3. 面向对象思想的体现一:类和对象的创建和执行操作有哪三步?
1.创建类
2.类的实例化
3.调用对象的结构:对象.属性 、 对象.方法
4.画出如下代码在执行时的内存分配情况?
class Car{
String color = "red";
int num = 4;
void show(){
int a = 10;
System.out.println("color="+color+",num="+num);
}
}
class CarTest {
public static void main(String[] args) {
Car c1 = new Car();
Car c2 = new Car();
c1.color = "blue";
c1.show();
c2.show();
}
}
变量名在栈中;new的对象在堆中。
5.类的方法内是否可以定义变量?是否可以调用属性?是否可以定义方法?是否可以调用方法?
是;是;否;是
6. 什么是方法的重载?
两同一不同:同一类、相同方法名;参数列表不同。
如何调用确定的方法:方法名--->参数列表
7.说明Java方法中的参数传递机制的具体体现?
基本数据类型:数据值
引用数据类型:地址值(含变量数据类型)
Person p1 = new Person();
Use u1 = p1;//编译错误,类型不一致。
8.谈谈return关键字的内存解析
1.结束方法
2.针对于有返回值的方法 return + 返回的数据
9. 提供如下代码的内存解析
public class TransferTest3{
public static void main(String args[]){
TransferTest3 test = new TransferTest3();
}
public void first(){
int i = 5;
Value v = new Value();
v.i = 25;
second(v,i);
System.out.peintln(v,i);
}
public void second(Value v, int i){
i = 0;
v.i = 20;
Value val = new Value();
v = val;
System.out.peintln(v.i+" "+i);
}
}
class Value{
int i = 15;
}
1.内容结构:栈(局部变量)、堆(new 出来的结构:对象(非static成员变量)、数组)
2.变量:成员变量 vs 局部变量(方法内、方法形参、构造器内、构造器形参、代码块内)
10.构造器的作用是什么?使用中有哪些点?
1.创建对象
2.初始化对象的信息
1.如果没显式的定义类的构造器的话,则系统默认提供一个空参的构造器
2.定义构造器的格式:权限修饰符 类名(形参列表){}
3.一个类中定义的多个构造器,彼此构成重载
4.一旦我们显式的定义了类的构造器之后,系统就不再提供默认的空参构造器
11.关于类的属性的赋值,有几种赋值的方式。谈谈先后顺序。
默认初始化-显式初始化-构造器中初始化-对象.方法 或者 对象.属性 给属性赋值
12. this关键字可以用来调用哪些结构,简单说明一下其使用。
属性、方法、构造器
this:理解为当前对象,当前正在创建的对象
13. Java中目前学习涉及到的四种权限修饰符都有什么?并说明各自的权限范围。
private int age;
private void eat(){}
修饰符 | 类内部 | 同一个包 | 不同包的子类 | 同一工程 |
---|---|---|---|---|
private | yes | |||
(缺省) | yes | yes | ||
protected | yes | yes | yes | |
public | yes | yes | yes | yes |
14. 创建Circle类,提供私有的radius属性,提供相应的get和set方法,提供求圆面积的方法。
public class Circle{
private double radius;
public double getRadius(){
return radius;
}
public void setRadius(double radius){
this.radius = radius;
}
public double findArea(){
return 3.14 * radius * radius;
}
}
转载:https://blog.csdn.net/weixin_43292923/article/details/106092701
查看评论