- 博客(10)
- 收藏
- 关注
原创 “学习”Java之Object类
1.Object是所有类、数组、枚举类的父类。所有对象可以调用Object类的方法。2.常用方法有//创建并返回此对象的一个副本,具体方法详解见Object类之clone()文章//https://blog.youkuaiyun.com/armylu55/article/details/79694713protected Object clone();//返回该对象的hashcode值,但Object类中并没...
2018-03-26 13:54:09
200
原创 “学习”java之“==”与“equals”详解
1.首先理解java中的内存地址是什么?Java把内存划分成两种:一种是栈内存,一种是堆内存。在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。堆内存用来存放由new创建的对象和数组。在堆中分配的内存,由Jav...
2018-03-26 13:06:06
204
原创 “学习“Java Object类之clone()
protected Object clone();此方法两个概念:浅复制(浅克隆):它只克隆该对象的所有成员变量值,不会对引用类型的成员变量值所引用的对象进行克隆。例子:class Address{ String detail; public Address(String detail) { this.detail=detail; }}class User implements Cloneabl...
2018-03-26 10:35:29
192
原创 “学习“java之接口
1.第一接口不用class,用interface:【修饰符】 interface 接口名 extends 父接口1,父接口2...{}2.接口定义的是一种规范不能包含构造器和初始化块定义,可以包含成员变量(只能是静态常量)、方法(只能是抽象实例方法、类方法或默认方法)、内部类(包括内部接口、枚举)定义。3.默认修饰符 public abstract定义接口中的普通方法时不论是否用public ab...
2018-03-23 16:49:57
218
原创 “学习“java之abstract
1.抽象类和抽象方法必须使用abstract修饰,抽象方法不能有方法体2.有抽象方法的类只能被定义成抽象类,抽象类可以没有抽象方法3.抽象类不能被实例化,不能用new关键字来调用抽象类的构造器创建抽象类的实例,即使抽象类不包含抽象方法,这个抽象类也不能创建实例4.抽象类的构造器不能创建实例,主要用于被其子类调用5.含有抽象方法的的类只能被定义成抽象类抽象方法与空方法体的方法?抽象方法如public...
2018-03-23 15:28:37
154
原创 “学习“java之final
1.final修饰成员变量final修饰的成员变量必须由程序员显式地指定初始值如 :final int a=1;final int a;初始化块{ a=1;}final static int a;//类变量静态初始化块 static{a=1;}ps:static后属于类成员不能访问实例成员,因为在静态成员初始化完成后,但实例成员还没初始化,造成严重错误。总结:类变量(static):2个地方:...
2018-03-23 15:02:43
176
原创 “学习“java之单例模式
饿汉式:public User(){private static User s=new User();private User(){}public static User getUser(){ return s;}}懒汉式:class User{ private static User s=null; public User(){if(s==null)s=new User();return ...
2018-03-23 14:51:18
120
原创 “学习“java之类成员
1.类成员包含变量、方法、构造器、初始化块、内部类(接口和枚举);初始化代码块是在jvm在加载类的时候运行的,简单理解他只执行了一次。但是构造方法不同,每次创建对象你都会调用一次构造方法。2.对象访问类变量时,系统会在底层转换为通过该类来访问类变量。3.对象调用类方法时也是转化为通过该类来访问类方法4.静态初始化块,在类的初始化阶段,会调用静态初始化块来对类进行初始化。一旦初始化结束后,再也没有执...
2018-03-23 14:50:10
165
原创 “学习“java之处理对象
1.打印对象和toString()方法直接打印对象时,输出类名+@+hashCode值并不能知道对象中的具体描述因此在需要重写toString方法。2.==和equals方法数值类型判断用==String类型判断用equals3."hello"直接量和new String("hello")有什么区别?"hello"时jvm将会使用常量池来管理这些字符串;new String("hello")时jv...
2018-03-23 14:48:47
119
原创 “学习“java之装箱与拆箱。
1.装箱与拆箱装箱:就是把一个基本数据类型直接赋值给对应的包装类或赋值给Object变量拆箱:就是允许把一个包装类对象赋值给一个对应的基本类型变量装箱:Integer inObj=5;基本数据 包装类int(4字节)Integerbyte(1字节)Byteshort(2字节)Shortlong(8字节)Longfloat(4字节)Floatdouble(8字节)Doublechar(2字节)...
2018-03-23 14:46:10
117
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人