Java知识点的总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、Java语言概述
1、精通一门语言
2、掌握一门流行框架
3、熟悉一些前端(HTML,css,js,jQuery)
4、熟悉一种数据库----->大数据oracle
5、了解一些服务器操作系统
二、javaSE--->桌面系统
CS(客户端系统)/BS()
JavaEE
JavaEE是一个开发分布式企业级应用的规范和标准。
Java语言的平台有3个版本:适用于小型设备和智能卡的JavaME(Java Platform Micro Edition,Java微型版)、
适用于桌面系统的JavaSE(Java Platform Micro Edition,Java标准版)、
适用于企业应用的JavaEE(Java Platform Enterprise Edition,Java企业版)。
JavaEE包含的技术:
JavaEE应用程序是由组件构成的。J2EE组件是具有独立功能的单元,他们通过相关的类和文件组装成JavaEE应用程序,并与其他组件交互。
JavaEE包括的技术有:Web Service、Struts、Hibernate、Spring、JSP、Servlet、JSF、EJB、JavaBean、JDBC、JNDI、XML、JavaSE
三、
final String name="asdf";
错误: name = name + "aaaa";
位运算符:<<>>>>>& | !
四、this 和 super的区别:
this代表什么?这儿代表New出来的那个玩意儿在堆空间的引用地址
1、通过this关键可以明确的去访问一个类的成员变量,解决与局部变量
名称冲突问题。
2、通过this关键字调用成员方法。
3、构造方法是在实例化对象时被Java虚拟机自动调用的,在程序中不能
像调用其他方法一样去掉用构造方法,但可以在一个构造方法中使用
“this([参数1,参数2,..])”的形式来调用其他的构造方法。
使用this构造方法中,应注意以下几点。
1、只能在构造方法中使用this调用其他的构造方法,不能再成员方法中
使用。
2、在构造方法中,使用this调用构造方法语句必须位于第一行,且只能
出现一次。
3、不能再一个类的两个构造方法中使用this互相调用。
列如:Father f = new Child();
** F这个变量里面放的就是this,是new Child()这个玩意的对空间的引用地址。
这里定义成Father类,只有Father类的属性和方法是可见的。
父类中写的this这个其实就是父类或其他子类、孙子类在运行的时候【重复一次】new 子类、new孙子类……的对空间的的引用地址
1、在静态方法中不可以使用this关键字
2、在静态方法中不可以直接调用非静态方法。
3、Java中规定不能将方法体内的局部变量声明为static。
●super代表什么?
在Java中专门提供了一个super关键字用于访问父类的成员,例如访问
父类的成员变量,成员方法,和构造方法。
1、使用super关键字调用父类的成员变量和成员方法。
2、使用super调用关键字父类的构造方法。
●Final关键字?
Final修饰的类不能被继承。
Final修饰的方法不能被子类重写。
Final修饰的变量是常量,只能被赋值一次。
Super只是记录对象内部的父类的特征(属性和方法)的引用,只是执行了
父类的构造方法将父类的特征生成了,但是属于new出来的那个子类对象。
fc1这个变量里面放的就是this,是new SunziClass()这个玩意儿在堆空间的引用地址.
●Static 关键字
在Java中定义一个static关键字,它用于修饰类的成员,如成员变量,成员方法
以及代码块等。
在一个Java类中,可以使用static关键字修饰成员变量,该变量被称为静态变量。
静态变量被所有实例共享,可以使用“类名.变量名”的形式来访问。
注意:static关键字只能修饰成员变量,不能用于修饰局部变量,否则编译会出错。
●静态方法:不创建对象的情况下就可以调用的方法。
在一个静态方法中只能访问用static修饰的成员,原因在于没有被static修饰的
成员需要先创建对象才能访问,而静态方法在被调用时可以不创建任何对象。
●单例模式
单利模式是Java中的一种设计模式,它是指在设计一个类时,需要在保证整个程序
运行期间针对该类只存在一个实例对象。
1、类中定义一个无参的构造方法,并且声明private修饰,声明为私有。这样就
不能再类的外部使用new关键字来创建实例对象。
2、在内部创建一个该类的实例对象,使用静态变量引用实例对象。
3、使用private修饰静态变量,禁止外界直接访问。
4、定义静态方法返回该类的实例。
●内部类
在Java中,允许在一个类的内部定义类,这样的类称作内部类,这个内部类所在的类称作外部类。根据内部类的位置,修饰符和定义的方式可以分为成员内部类,静态内部类,方法内部类。
1、成员内部类是外部类的一个成员,可以访问外部类的其他成员。
2、外部类可以访问成员内部类的成员。
3、方法内部类只能在其定义的当前方法中进行是实例化。
4、静态内部类中可以定义静态成员,也可以定义非静态成员。
●静态内部类
可以使用static关键字来修饰一个成员内部类,该内部类被称作静态内部类,它可以再不创建外部类对象的情况下被实例化。
注意:
1、静态内部类只能访问外部类的静态成员。
2、在静态内部类中可以定义静态的成员,而在非静态的内部类中不允许定义静态
的成员。
●方法内部类
方法内部类是指在成员方法中定义的类,他只能当前方法中被使用。
●懒汉模式:只用在自身需要的时候才会行动,从来不知道提早做好准备,他在需
要对象的时候才判断是否已有对象,如果没有就立即创建一个对象,然后返回。如果已有对象就不创建立即返回。懒汉模式只在外部对象第一次请求实例的时候才去创建。
●饿汉模式:就是加载这个类的时候立马创建。
●抽象类和接口
但定义一个类时,常常需要定义一些方法来描述该类的行为特征,但有时这些类的方法的实现是无法确定的。Java允许在定义方法的时候不写方法体,不包含方法体的方法被称为抽象方法,抽象方法必须使用abstract关键字来修饰,使用abstract 关键字修饰的类为抽象类。
包含抽象方法的类必须声明为抽象类,但抽象类可以不包含任何抽象方法,只需要abstract关键字来修饰即可。
抽象类是不可以被实例化的,因为抽象类中可能包含抽象方法,抽象方法没有方法体,不可以被调用。
接口:一个抽象类中所有的方法都是抽象的,则可以将这类用另外一种方式来定义,即接口。
&:接口中定义的方法和变量都包含一些默认的修饰符,接口中定义的默认使用“public abstract”来修饰,即抽象方法。接口中的变量默认使用“public static