面向对象的特点
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向对象的特点、
答案:.信息隐藏和封装特性: 封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。 2.继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3.组合特性 组合用于表示类的“整体/部分”关系。例如主机、显示器、键盘、鼠标组合成一台计算机。 4.动态特性 (1)抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 (2)多态性: 多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。
九九乘法表的输出
答案:public class KY2_11 { public static void main(String args[]) { int i=0,j=0; int sq=0; for(i=1;i<=9;i++) { for(j=1;j<=i;j++) { sq=i*j; System.out.print(j+"*"+i+"="+sq+" "); if(i==j) {
System.out.println(); } } } } }
还有单例模式
System.out.println (Singleton.getInstance());
System.out.println (Singleton.getInstance());
main 函数中有这两句,一摸一样。
第一句执行的时候,第一次调用getInstance(),意思是要获取Singleton的一个对象实例。
而正常情况下,我们要获取对象的话是用 new Singleton(),这个方法的,但是这个方法在Singleton里面被声明为:private ,意思是外界不能调用。
不能调用,我怎么用你的对象?
Singleton里面实现了生成对象的方法,getInstance(),你要用他的对象就必须调用这个方法。
而这个方法里面你也看到了,如果
if(instance == null){
instance = new Singleton();
}
如果没有实例则创建一个新的,但是已经创建过的话,就返回已经存在的实例。
所以输出结果:
net.chelson.chapter5.Singleton@de6ced
net.chelson.chapter5.Singleton@de6ced
你两次调用的这个对象的内存地址都是相同的,也就是说,是同一个东西(对象)
这个总的来说就是:
类的构造方法私有化(防止外界构造新对象)
提供获取实例的方法(用于外界调用)
作用:用于提供只能有一个实例的对象
一、抽象类和接口的区别?
、抽象类里面可以有非抽象方法 但接口里只能有抽象方法 声明方法的存在而不去实现它的类被叫做抽像类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽像类,并让它指向具体子类的一个实例。不能有抽像构造函数或抽像静态方法。Abstract 类的子类为它们父类中的所有抽像方法提供实现,否则它们也是抽像类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。
2、接口(interface)是抽像类的变体。在接口中,所有方法都是抽像的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽像的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对像上调用接口的方法。由于有抽像类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口
二、如何声明一个类,使其不方法声明为final能被继承?
三、是否了解MVC模式,其中M、V、C各表示什么?
MVC模式是"Model-View-Controller"的缩写,中文翻译为"模式-视图-控制器"。
四、列举出你曾经用过或者了解的几种设计模式?
策略模式 代理模式 抽象工厂模式 代理模式之动态代理 单态模式和简单工厂模式 工
厂方法模式 建造模式 门面模式
五、awt和swing的区别?
跟本地系统的相关性。。JDK写程序所有功能都是靠虚拟机去操作本地操作系统比如window下。。就是JDK用windows API实现你功能
而awt包中很多组件是组件自身去调用本地操作系统代码
swing包中的组件采用的是调用本地虚拟机方法,由虚拟机再调用本地操作系统代码。。
意思就是中间多了一层,这样就加强了swing包的移植性,与本地关系不那强了
六、简述java编程中事件处理的模式。
注册侦听模式。 就是对事件感兴趣的对象把自己注册到事件源对象那里,然后事件源对象当事件发生时就会一次调用注册到自身的那些对象的而相应方法。然后事件就被处理了
七、Applet的安全权限如何?
1、语言特性(包括数组的边界检查、类型转换、取消指针型变量)。
2、资源访问控制(包括本地文件系统访问、Socket连接访问)。
3、代码数字签名(通过数字签名来确认代码源以及代码是否完整)。
八、列举java application或者applet与servcet/jsp通信可采用的方式
采用的是socket套接字通讯,在启动服务器的时候实例化一个socket,指定端口,然后你能从地址栏里面输入ip以及端口就能与服务器连接