java日常笔记2016-12-08
来源:互联网 发布:网络诽谤罪澄清函 编辑:程序博客网 时间:2024/06/06 00:05
null 是一切引用类型的初始化!!
成员变量有默认初始化:
数值类型0或0.0
引用类型null
布尔类型 false char类型是‘/u0000’
System.out.println(null);//
这个是错误的!因为系统匹配不到是具体哪个类型
2:
面向过程----> function
面向对象----> method
方法最讲究两个字 : 匹配
也称为普通方法或实例方法,它的执行必须依赖对象!!
3:return 使用void 时,仍然可以使用return 只是可以省略
4:构造方法:类无条件具备构造方法,如果类当中没有声明构造方法,自带默认的构造方法,没有参数。如果类声明了构造方法,默认的无参构造就不存在 了。
得到对象实例!
声明的方式:
修饰符 类名(参数){
}
备注:不能声明返回值,它的执行只能 new
5:静态方法:执行不依赖对象,直接通过类名调用,静态方法不能调用实例方法。实例方法可以调用静态方法。静态方法不能抽象!!
6:静态代码块:类加载的时候会自动执行
String field1;String field2 = "呵呵";public Demo() {System.out.println("构造方法");}static{//System.out.println("我是静态代码块");//这是一个具体的语句!!必须包含在}{System.out.println("我是实例代码块");//这是一个具体的语句!!必须包含在}public static void main(String[] args) {}
7:实例代码块:创建对象的时候执行一次,在静态代码块后执行
8:匿名对象无法通过对象引用方法之类的
9:this可省略,但最好用,因为调用方法或者变量时,可以弹出提示, 使用this可以在构造方法中调用构造方法
public class Dog {String sex;//成员变量:fieldString color;public Dog() {System.out.println("====================================================");System.out.println("接生啊");System.out.println("====================================================");}public Dog(String color){this();this.color = color;}public Dog(String sex,String color){this(color);//独立去调用构造方法,结果又是一个对象!!this.sex =sex;//对象已经产生了!!}public void say(String toSay){System.out.println("我是一个傻B,呵呵!!");}public void say(){System.out.println("嘿嘿,我的命比你好!");}public void eat(){System.out.println("牛奶只喝伊利,不喝蒙牛!!");}public static void main(String[] args) {Dog you = new Dog("公","白色");}10:数组传参
可变数组长度、本质就是一个数组
方法的参数列表只允许一个可变长度参数,且位于最后!!
int max1 = getMax(new int[] { 1, 1, 1, 2, 3 });
int max = getMax(212,32,32,43,54,);
public static int getMax(int... arr) {}
11:三目运算判断ab的大小int max = (a>b? (a>c?a:c):(b>c?b:c) );
int max = (a>b?a:b) > c? (a>b?a:b):c ;
12:方法传参(基本数据类型(对原来的值是没影响的,其实传的是一份拷贝!)、
数组(数据是一个引用类型!特殊的对象!传的是对象的引用,就是一个指向。所以,如果方法中改变了该数组,原来的数组也会改变。其实就是同一个数组!!
))
public class MainMain {public static void main(String[] args) {int[] arr = new int[]{99,99,99};change(arr);for (int j : arr) {System.out.println(j);}}public static void change(int[] array){for (int i = 0; i < array.length; i++) {array[i] = 100;}}}
13:类不具备执行能力、对象具备执行能力
14:静态方法也可以new 对象出来访问
15:null 空指针异常 throw new RuntimeExciption("撒旦撒")
16:break return 区别 一个是直接给方法返回值,一个是直接退出循环
17:构造方法定义上是说不能声明返回值,但可以写return,无任何用意
18:继承类后,如果未声明构造方法,子类是会报错的 因为子类是通过类.查找的,在类里面无法找到构造方法
19: eclipse包裹一个方法的操作,可以传递参数
20:默认构造方法,始终在最前面调用 (记住静态优先,构造方法优先)
- java日常笔记2016-12-08
- java日常笔记2016-12-02
- java日常笔记2016-12-03
- java日常笔记2016-12-04
- java日常笔记2016-12-07
- java日常笔记2016-12-09
- java日常笔记2016-12-10
- java日常笔记2016-12-11
- java日常笔记2016-12-14
- java日常笔记2016-12-15
- java日常笔记2016-12-16
- java日常笔记2016-12-17
- java日常笔记2016-12-19
- java日常笔记2016-12-20
- java日常笔记2016-12-21
- java日常笔记2016-12-22
- java日常笔记2016-12-23
- java日常笔记2016-12-26
- PAT--1098. Insertion or Heap Sort(排序)
- 通过 https 连接webservice示例(比http连接更安全)
- Python-abs,group,getattr,datetime
- Linux常规操作命令
- oracle varchar 转换clob
- java日常笔记2016-12-08
- System,Runtime,Date,Math
- UI布局初试---one
- 第十五周项目3--B-树的基本操作
- 关于html锚点
- PHP7+TP3.2.3 使用记录
- com.sun.faces.config.ConfigureListener Not Found
- 35 个 Java 代码性能优化总结(一)
- 保证分布式系统数据一致性的6种方案