Java 学习笔记
2016-07-03 10:57
274 查看
在 Java 里面,一切皆对象
Java 类里面的实例变量只有在创建对象的时候,才会为其分配内存空间,所以是不能对其在类内初始化的,子类可以继承父类中所有的实例变量和方法,也可以被子类的实例变量和方法覆盖(但是由 final 修饰的方法可以被子类继承和重载,不能被子类覆盖),注意:构造函数前,不能加 final,而 static() 和 private() 方法是隐式的 final() 方法
Java的接口和类的定义类似,但在接口中不能声明任何变量和构造函数,如果一个类实现了多个接口,应该在接口名之间用逗号隔开。接口和类一样,可以作为一种数据类型使用
java 引出异常(Exception)的概念有两方面的考虑:
1、防止出现异常情况的代码多于主要目的的代码(比如 if...else...结构)
2、便于程序员进行编程,避免了程序员要把所有的异常情况都考虑到
java 抛出异常的方式有两种,一种是手动抓异常:try...catch 另一种是用 throws,加 throws 就是我先不管这个异常,就是谁调由 throws 处理的函数,谁处理这个异常,子类只能扔出异常的子类
异常里面的 error 类不需要程序员管,比如开着的时候,发动机坏了,驾驶员处理不了,是厂家的事情;遇到 error 的唯一的办法:重启,关键是 Exception 这个是需要程序员管的,Exception 就相当于开着车往前跑,突然前面出现一个人,需要驾驶员处理
异常的分类:
其中空指针异常是遇到的最多的情况,其出现的原因一般是:对象是空:NULL,但是却调用了对象的方法或属性,比如:创建一个空的指针, Student c = null; 那么这个 c 没有指向任何对象,所以在调用对象的方法或属性的时候会抛出异常
当有可能出现问题的情况的时候,需要 try...catch...语句处理
try{
语句 1;
语句 2;
}catch(Exception e){
语句 3;
}finally {
语句 4;
}
其中遇到异常的时候,会执行 Catch 语句,finally 语句是一定要执行的语句,当遇到异常的时候,程序不会继续往下执行,finally 里面通常放一些关闭资源的代码,因为程序可能在读取文件的时候出现异常,所以要通过 finally 来关闭文件,finally 里面一般不要加 return 语句,在 try 里面的return 语句是要在执行完 finally 之后才真正的返回,也就是函数的结束
一个 try 语句必须带一个 Catch 或 finally 语句(只带一个 finally 的时候,有时候可以,有时候不可以,但是只有一个 try 是肯定不行的),一个 try 可以对应多个 catch, 并且 catch 语句不能交换顺序,一般情况 子类的 catch 语句放前面,父类的语句放后面,越是父类,越往后放
对象是包装数据,组织数据
java 注解
1、@Override
定义在 java.lang.Override 中,此注解只适用于修饰方法,表示一个方法声明打算重写超类中的另一个方法声明
2、@Deprecated
定义在 java.lang.Deprecated 中,此注释可用于修饰方法、属性、类,表示不鼓励程序员使用这样的元素,通常是因为他很危险或者有更好的选择。
3、@SupperWarnings
定义在 java.lang.SuppressWarnings 中,用来抑制编译时的警告信息。
元注解:
元注解的作用就是负责注解其他注解。 java 定义了4个标准的 meta-annotation 类型,它们被用来提供对其他 annotation 类型的说明
这些类型和它们所支持的类在 java.lang.annotation 包中可以找到
1、@Target 2、@Retention 3、@Documented 4、@Inherited
用的最多的是前两个
java里面可以通过反射机制,利用 setAccessible 来访问私有属性,当需要频繁的调用反射的时候,可以把 setAccessible 设为 true,来提高程序运行效率
Java 类里面的实例变量只有在创建对象的时候,才会为其分配内存空间,所以是不能对其在类内初始化的,子类可以继承父类中所有的实例变量和方法,也可以被子类的实例变量和方法覆盖(但是由 final 修饰的方法可以被子类继承和重载,不能被子类覆盖),注意:构造函数前,不能加 final,而 static() 和 private() 方法是隐式的 final() 方法
Java的接口和类的定义类似,但在接口中不能声明任何变量和构造函数,如果一个类实现了多个接口,应该在接口名之间用逗号隔开。接口和类一样,可以作为一种数据类型使用
java 引出异常(Exception)的概念有两方面的考虑:
1、防止出现异常情况的代码多于主要目的的代码(比如 if...else...结构)
2、便于程序员进行编程,避免了程序员要把所有的异常情况都考虑到
java 抛出异常的方式有两种,一种是手动抓异常:try...catch 另一种是用 throws,加 throws 就是我先不管这个异常,就是谁调由 throws 处理的函数,谁处理这个异常,子类只能扔出异常的子类
异常里面的 error 类不需要程序员管,比如开着的时候,发动机坏了,驾驶员处理不了,是厂家的事情;遇到 error 的唯一的办法:重启,关键是 Exception 这个是需要程序员管的,Exception 就相当于开着车往前跑,突然前面出现一个人,需要驾驶员处理
异常的分类:
其中空指针异常是遇到的最多的情况,其出现的原因一般是:对象是空:NULL,但是却调用了对象的方法或属性,比如:创建一个空的指针, Student c = null; 那么这个 c 没有指向任何对象,所以在调用对象的方法或属性的时候会抛出异常
当有可能出现问题的情况的时候,需要 try...catch...语句处理
try{
语句 1;
语句 2;
}catch(Exception e){
语句 3;
}finally {
语句 4;
}
其中遇到异常的时候,会执行 Catch 语句,finally 语句是一定要执行的语句,当遇到异常的时候,程序不会继续往下执行,finally 里面通常放一些关闭资源的代码,因为程序可能在读取文件的时候出现异常,所以要通过 finally 来关闭文件,finally 里面一般不要加 return 语句,在 try 里面的return 语句是要在执行完 finally 之后才真正的返回,也就是函数的结束
一个 try 语句必须带一个 Catch 或 finally 语句(只带一个 finally 的时候,有时候可以,有时候不可以,但是只有一个 try 是肯定不行的),一个 try 可以对应多个 catch, 并且 catch 语句不能交换顺序,一般情况 子类的 catch 语句放前面,父类的语句放后面,越是父类,越往后放
对象是包装数据,组织数据
java 注解
1、@Override
定义在 java.lang.Override 中,此注解只适用于修饰方法,表示一个方法声明打算重写超类中的另一个方法声明
2、@Deprecated
定义在 java.lang.Deprecated 中,此注释可用于修饰方法、属性、类,表示不鼓励程序员使用这样的元素,通常是因为他很危险或者有更好的选择。
3、@SupperWarnings
定义在 java.lang.SuppressWarnings 中,用来抑制编译时的警告信息。
元注解:
元注解的作用就是负责注解其他注解。 java 定义了4个标准的 meta-annotation 类型,它们被用来提供对其他 annotation 类型的说明
这些类型和它们所支持的类在 java.lang.annotation 包中可以找到
1、@Target 2、@Retention 3、@Documented 4、@Inherited
用的最多的是前两个
java里面可以通过反射机制,利用 setAccessible 来访问私有属性,当需要频繁的调用反射的时候,可以把 setAccessible 设为 true,来提高程序运行效率
相关文章推荐
- java框架之springmvc07(国际化处理)
- Struts2校验方法validate以及validateXxx方法
- DAO设计模式
- Thinking in java-对象导论
- Error creating the view. An error occurred while automatically activating bundle
- Error creating the view. An error occurred while automatically activating bundle
- 二叉树的递归和非递归实现 java
- java时间和日期类型
- Java内存机制
- Spring学习(一)—入门
- 【Java进阶一】理解封装
- java 控制台输入的两种方式
- Java内存管理机制
- spring 10 bean配置-通过FactoryBean配置bean
- java 最长回文字串
- 关于java比较器
- 其它常用流对象
- Java对象的访问方式
- Spring MVC POJO入参过程分析
- java实现第三方登录