Java基础------知识点整理(一)
来源:互联网 发布:农村淘宝网站首页 编辑:程序博客网 时间:2024/04/20 02:40
1.&和&&,|和||的区别
对于&&,只要左边为假,右边就不执行判断
对于&,无论左边为真假,右边都执行判断
对于||,只要左边为真,右边就不执行判断
对于|,无论左边为真为假,右边都执行判断
2.构造函数与一般函数的区别
(1)构造函数在创建对象时,会被自动调用
一般函数在创建对象后,需要主动调用
(2)构造函数一般只调用一次
一般函数可以多次调用
3.匿名对象:
匿名对象就是不给对象命名,直接调用类中的成员或方法
new 类名.方法() new 类名.成员
4.this
(1)this代表当前对象,this就是所在函数所属对象的引用
(2)this可以在构造函数中调用其他构造函数,但只能在构造函数的第一行,这是因为this代表构造的对象,而其初始化必须先执行。格式为: this(成员名);
5静态的特点:(宗旨:和对象无关,不需要创建对象)
(1)静态修饰的成员
静态修饰的成员被所有对象共享(可以节省内存),静态修饰的数据是共享数据
静态修饰的成员和方法由于对象存在,因为静态的成员和变量随着类的加载就已经存在
静态成员和方法可以直接被类名调用,格式:类名.静态成员,类名.静态方法
(2)静态修饰的方法
静态的方法只能访问静态成员变量和静态的成员函数(非静态方法既能访问非静态的成员又能访问非静态的方法)
静态方法中不能调用this或super关键字
(3)静态代码块
格式:
static{ System.out.println("这里面的就是静态代码块的内容");}
特点:随着类的加载而自动执行,而且只执行一次,因为是静态的所以会被自动加载,而又由于是静态的只要加载了就可以被其他成员所调用,不需要再加载,否则也是浪费
作用:用于给类进行初始化,虽然构造函数时给对象初始化的,但是有些类不需要创建对象(比如变量和方法都是静态时)
6.函数是否需要静态修饰?
就看函数是否需要访问非静态成员变量,如果需要则定义为非静态的,如果不需要就定义成静态的
7.构造代码快
可以给所有对象的相同内容初始化
格式:在类中用 {}括起来就可以
{ coding....}8. 静态代码块,构造代码块,构造函数,局部代码块区别
静态代码块:只与类有关,类一加载就执行且只执行一次
构造代码块:与对象有关,需要new一个对象,然而new一次就执行一次,它是给对象进行初始化的,与构造函数主要区别在于,它初始化所有需要创建对象共同的初始化内容
构造函数:构造函数是有针对性的初始化,执行不同重载的构造函数,对类的成员初始化内容不同
局部代码块:限定变量生命周期时用的
执行顺序:静态代码块(1)构造代码快(2)构造函数(3)局部代码块(4)
9.如何让类拥有不允许调用构造函数
当类中的方法根本就没有调用类中的成员变量,或根被就没有成员变量时,就可以将成员函数定义为静态的成员函数,这时也就不需要创建对象来调用这些静态的方法,防止浪费空间,就可以强制阻止创建对象,在构造函数前私有化(加private)
10.switch语句
只能判断4中类型的参数:short int char byte
case无顺序之分,上下都行,但是记得如果需要在每个case的执行语句后面加break;(switch结束大括号的那条语句可以省略)
如果没有break时,程序会不再判断case值,直接执行下面的执行语句直到遇到一个break或右大括号
switch(x){ default: syso("a"); case 1: syso("b"); case 2: syso("c");break; case 3: syso("d");break;}
//执行结果:abc
11.内存的划分
①寄存器 ②本地方法区 ③方法区
④栈内存:存储的都是局部变量,变量所属的作用域一结束,该变量就自动结束
⑤堆内存:存储数组(其实也是对象),对象,凡是new建立的对象都在对中
特点:每一个对象都有首地址,堆内存每一个变量都有默认的初始化,如int型为0,char型为null,String型为null,boolean为 false
12.成员变量与局部变量的区别
①成员变量定义在类中,整个类都可以访问,
局部变量定义在函数,语句,局部代码块中,只在所属的区域有效
②成员变量存在堆内存的对象中
局部变量存在栈内存的方法中
③成员变量随着对象创建而存在,随着对象消失而消失
局部变量随着所属区域执行而存在,随着所属区域执行结束而消失
④成员变量都有默认的初始化值
局部变量没有默认的初始化,没有初始化过的不能直接用
13构造函数的特点
函数名与类名相同,首字母大写,不能定义返回类型(如果定义了就不是构造函数了,可以看为是普通函数)
如果类中没有定义构造函数,那么类中会有一个默认的空参够凹函数,如果类中定义了指定的构造函数,那么默认的构造函数就没有了,如果仍需空参的构造函数,需要手动定义一个
构造函数可以调用类中的其他函数,而类中的其他函数不能调用构造函数(因为构造函数是new一个自动调用的)
14基本类型的大小
char 1字节
short 2字节
int 4字节
long 8字节
float 4字节
double 8字节
- Java基础------知识点整理(一)
- java2SE基础知识点整理(一)
- JAVA基础知识点整理
- java基础知识点整理
- java基础知识点(一)
- java基础知识点(一)
- Java基础知识点(一)
- Java基础知识点(一)
- Java基础------知识点整理(二)
- Java基础------知识点整理(三)----- 继承
- Java基础------知识点整理(五)-----多态
- Java基础------知识点整理(六)-----抽象
- Java基础------知识点整理(七)-----接口
- Java基础------知识点整理(九)-----异常
- 各种基础知识点整理(Java向)
- Java面试知识点整理(一)
- Java基础知识点【一】
- Java基础知识点(一)
- 3.Java Networking: ServerSocket--java网络:服务端Socket
- 在 Eclipse 下利用 gradle 构建系统
- 关于mybatis扩展的一点想法
- 详解cookie
- 使用eclipse开发Android时,打开layout文件闪退
- Java基础------知识点整理(一)
- 高匿代理ip检测
- 联调 我不怕!(一)
- 二进制转十进制(栈实现)
- selenium webdriver 以署理proxy方式启动firefox,ie,chrome
- 排序算法-选择排序
- selenium 代理
- Shell脚本语法
- selenium webdriver—超时设置