您所在的位置:主页 > Java培训 >

JAVA程序员必须掌握的知识点了解一下

时间:2018-11-09 15:38来源:未知 作者:os 点击:


 
1、 类、对象的概念: 

1) 类:具有共同属性和行为的对象的抽象。类是创建对象的模板。 

2) 对象:现实世界中的实体。在计算机中,是指可标识的存储区域。 

3) 类是对象的抽象、对象是类的实例。 

2、 抽象:是从特定的实例中抽取共同性质形成一般化概念的过程。 

3、 接口与抽象类: 

1)接口和抽象类都用于抽象,接口是抽象类的抽象。 

2)接口中只有方法声明,没有实现(无方法体);在接口中声明的方法具有public和abstract属性,一个类可以实现多个接口(即多继承),接口以‘,’分隔;接口中的方法必须全部实现。 

3)抽象类可以有部分方法实现,抽象类必须通过继承才能使用。 

4、内部类(Inner Class): 

1)内部类是嵌套在另一个类中的类。 

2)内部类用于名称隐藏和程序代码的组织,另外内部类拥有直接访问其外部类所有成员(包括private的)的权限(无需任何关键字修饰)。 

3)内部类不可以在其他类或main方法里实例化,必须使用如下方法(非静态内部类) 

外部类.内部类 对象名=new 外部类().new 内部类(); 

静态内部类调用方式: 

外部类.内部类 对象名=new 外部类.内部类(); 

4)非静态内部类不可以声明静态成员;静态内部类的非静态成员可以访问其外部类的静态成员,声明为静态的成员不可以访问外部的非静态成员。 

5、访问修饰符限制: 

Private protected friendly(default) public 

同类 Y Y Y Y 

同包不同类 N Y Y Y 

同包子类 N Y Y Y 

不同包不同类 N N N Y 

不同包子类 N Y N Y 

6、Static关键字的使用: 

1)类成员,直接使用 类名.成员 调用。 

2)静态方法只能访问静态成员。 

3)静态方法不能使用this、super关键字。 

4)静态方法不能被非静态方法重写或重载。 

7、final关键字: 

1)被final修饰的变量为常量不能改变。 

2)被final修饰的方法不可以重写。 

3)被final修饰的类不能被继承。 

8、abstract关键字: 

1)被abstract修饰的类不能实例化。 

2)被abstract修饰的方法只能在子类中实现。 

9、native关键字:非Java语言的编写,例如JNI技术。 

10、synchronized关键字:多线程的同步访问控制。 

11、分类列举服务器和组件技术: 

1)服务器端技术:Jsp、Servlet; 

2)组件技术:JavaBean、EJB。 

12、Http与Https:Https即多了安全的Http,s(Security Socket Layer)指加密套接字协议层(简写SSL)。 

13、OSI(Open System Interconnection)网络抽象模型: 

1)由国际标准化组织(ISO)提出。 

2)将互联网分为七层,从下至上分别为:物理层(physical)、数据链路层(data link)、网络层(network)、传送层(transport)、会话层(session)、表示层(presentation)、应用层(application)。底层通过提供接口支持上层功能。各层详解: 

物理层:LAN/ATM,为硬件层。 

数据链路层:LAN/ATM 

网络层:IP协议,IOS 

传输层:TCP/UDP协议,支持Java Socket。 

会话层: 

表示层:HTML、XML 

应用层:HTTP协议,使用Java Servlet/JSP 

<第八层(Web服务层):SOAP/UDDI> 

14、J2EE的容器与服务器: 

容器负责EJB组件中生命周期的控制; 

服务器包含在容器外,提供系统级操作底层服务,包括事务、事件、多线程……。 

15、继承限制: 

父类对象不可以赋给子类对象,因为子类可能具有更多的成员,反之可以。 

16、逻辑操作:c=(a>b)?a:b;等同于下式 

if(a>b) c=a; else c=b; 

17、列举常见集合框架类型: 

1)List、Set、Map。由这三个接口实现出ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeMap等常用集合框架。 

2)Vector属于重量级组件不推荐使用。 

3)Map类型维护键/值对,Hashtable与HashMap相近但效率略低于HashMap、高于TreeMap,TreeMap优点是可以排序。 

4)Set类型可装入唯一值,HashSet效率高于TreeSet但TreeSet可以维护内部元素的排序状态。 

5)List类型可按某种特定顺序维护元素。ArrayList允许快速随机访问,但如果添加或删除位于中间的元素时效率很低;LikedList提供最佳循序访问及快速的中间位置添加删除元素,并有addFirst、addLast、getFirst、getLast、removeFirst、removeLast方法。 

18、面向对象的特征: 

1)继承:通过子类可以实现继承,子类继承父类的所有状态和行为,同时添加自身的状态和行为。 

2)封装:将代码及处理数据绑定在一起的一种编程机制,该机制保证程序和数据不受外部干扰。 

3)多态:包括重载和重写。重载为编译时多态,重写是运行时多态。重载必须是同类中名称相同参数不同(包括个数不同和类型不同),但返回类型不同不构成重载;重写发生于子类对父类的覆盖,子类继承父类方法名相同、参数列表相同、返回类型相同才构成重写。 

19、Java命名规范:必须以英文字母、下划线(’_’)或’$’开始,其余可以有数字但不允许 包含空格,且组合后的名称不能是Java关键字或保留字。 

匈牙利命名法:以m开始为类成员变量,以g开始为全局变量,以v开始为本地局部变量,常量命名一般不以下划线、美元符开始。 

驼峰命名:一般称由多个单词或缩写组成的变量名,并且该变量名每个单词首字母均为大写(一般类名全部首字母大写,方法或属性名第一个字母小写)的称为驼峰命名。 

20、Java语言共包含47个关键字。 

21、设计模式: 

一个设计模式描述了一个被证实可行的方案。这些方案非常普遍,是具有完整定义的最常用的模式。一般模式有4个基本要素:模式名称(pattern name)、问题(problem)、解决方案(solution)、效果(consequences)。