java简易问答(类与对象)

1、面对对象语言有哪三个特性?

答:封,继承,多态。

1)封装(encapsulation)

隐藏对象的属性和实现细节,仅对外公开接口,控制程序中属性的读取和修改的访问级别。将对象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”,其中数据和函数都是类的成员。封装就是把类的信息隐藏起来,不允许外部程序直接访问,而是通过这个类提供的方法来实现对内部隐藏信息的访问和操作。

封装的操作:

1.把属性用private修饰符修饰,成员变量只能在当前类中访问。

2.设置public的setName和getName方法,供外部调用。

3.使用public的方法访问。

2)继承

是面向对象软件技术中的一个概念。

继承性的特点:

就是子类继承父类的属性和行为,使得子类对象具有父类相同的属性,相同的行为。子类合一直接访问的非私有的属性和行为。

继承是多态的前提,如果没有继承就没有多态,而这样做也提高了代码的复用性。

继承主要解决的问题就是:共性抽取

继承关系中的特点:

1.子类可以拥有父类的“内容”。

2.子类还可以拥有自己专有的内容。

定义父类的格式:(一个普通的类定义)

public class 父类名称{}

定义子类的格式:

public class 子类名称 extends 父类名称{}

3)多态

多态性的特点:

是指同一行为,具有多个不同表现形式。

多态体现的格式:

父类类型 变量名 = new 子类对象;

变量名.方法名();

extengss继承或者implements实现。是多态性的前提。

2、类名应当遵守怎样的编程风格?

答:遵守标识符规则,名字编写采用“驼峰式”大小写,要见名知义,避免ml、nl等名字,尤其是名字中不要将大小写的英文字母l和数字1相连接,ll和l1很难区分。

3、变量和方法的名字应当遵守怎样的编程风格?

答:

1.变量名

和类名的规定一样,但名字的首单词的首字母要小写,如果变量的名字由多个单词组成,从第二个单词开始的其他单词的首字母使用大写。

2.方法名

答:和变量名的命名一样。

4、类体内容中声明成员变量是为了体现对象的属性还是行为?

答:对象的属性

5、类体内容中定义的非构造方法是为了体现对象的属性还是行为?

答:对象的行为

6、什么时候使用构造方法?构造方法有类型吗?

答:用类创建对象的时候需要使用构造方法;构造方法没有类型。

7、类中的实例变量在什么时候会被分配内存空间?

答:声明之后,在用new关键字创建实例的时候才分配内存。

8、什么叫方法的重载?构造方法可以重载吗?

答:

1.方法的重载是指一个类中可以有多个方法具有相同的名字,但这些方法的参数不同,或者参数的个数不同,或者参数的类型不同。

2.方法的构造可以重载。

9、类中的实例变量在什么时候可以操作类变量(static变量)吗?类方法(static方法)可以操作实例变量吗?

答:

1.类中的实例方法可以操作类变量。

2.类方法不可以操作实例变量。

10、类中的实例方法可以用类名直接调用吗?

答:类中的实例方法不可以用类名直接调用。

11、简述类变量和实例变量的区别

答:

1.类变量在类加载时分配内存的;实例变量在创建对象时分配内存的;类变量在程序退出时释放内存;对象不存在实例变量就不存在了。

2.类变量被所有变量共享,即同一类的所有对象共享此类的类变量;实例对象为每个对象独有;操作自己的实例对象而不会影响其他对象。

3.类变量一般通过类名来调用。

12、this关键字代表什么?this可以出现在类方法中吗?

答:

1.代表调用当前方法的对象

2.不可以

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值