Java错题本02

线程的生命周期

新建→就绪→运行→阻塞→死亡

New→Runnable→Running→Blocked→Dead

调用start进入就绪。

线程死亡:run或call方法执行完成

抛出未捕获的异常Exception或Error

调用线程的stop方法(不推荐,容易死锁)

isAlive()中间三种状态返回true

join方法让一个线程等待另一个线程完成

后台线程/守护线程/精灵线程 特征:前台线程全部死亡,后台就会自动死亡

如jvm的垃圾回收线程

O.setDaemon(true)设O对象为后台线程,


线程睡眠:sleep,让线程暂停,进入阻塞状态

线程让步:yield,让线程进入阻塞状态,有优先级的执行

setPriority()设置线程优先级


JVM终止:

程序正常结束

程序使用System.exit() Runtime.getRuntime().exit()

遇到为捕获的异常

程序所在平台强制结束Jvm进程


类加载或类初始化:加载→连接→初始化

类加载是指,将类的class读入内存,并为之创建一个java.lang.Class对象。当程序使用任何类都会创建这么一个对象。

类加载由类加载器完成,由JVM提供


类的连接:把类的二进制数据合并到JRE中

验证→准备→解析

验证内部结构是否正确,和其他类是否协调

准备:分配内存、设置初始值

解析:将类的二进制数据中的符号引用替换成直接引用


创建实例的方法:new、反射、反序列化

同一个类:全限定类名(包名、类名)JVM中靠全限定类名和加载器

JVM启动时,会形成由三个类加载器组成的初始类加载器的层次结构

Bootstrap ClassLoader:根类加载器

Extension ClassLoader:扩展类加载器:加载JRE扩展目录中JAR包的类

System ClassLoader:系统类加载器


JVM类加载机制

全盘负责:class所依赖的和引用的其他Class也由该类加载器负责载入

父类委托:先让父类加载器试图加载该Class

缓存机制:所有加载过的Class都会被缓存,若不在缓存区,系统会读取其二进制数据,并将其转换成Class对象。修改了Class必须重新启动JVM



通过反射创建对象两种方式

①使用Class对象的newInstance()方法来创建该Class对象对应类的实例

执行newInstance()方法实际是利用默认构造器来创建该类的实例

②先使用Class对象获取Constructor对象,再调用Constructor的newInstance方法来创建该Class对象对应的类的实例。

第一种方式比较常见

Public


进程和线程的主要差别在于它们是不同的操作系统资源管理方式。进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但在进程切换时,耗费资源较大,效率要差一些。但对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不能用进程


IO


异常

检查异常需要手动抛出



集合


Static修饰的成员不能访问没有static修饰的成员,例如main方法要先创建对象,才能访问Sting、int之类的。通过实例可以访问类变量,因为类变量都在一块内存区里。

Static的真正作用:区分成员变量、方法、内部类、初始化块4

Java通过new调用构造器,构造器构造实例,构造器是类创建对象的根本途径。

构造器的返回值默认是隐式的。

方法名以英文动词开头,void用来声明方法没有返回值,否则有return

同一个对象里的一个成员可以直接调用另一个成员,即省略this

Java里的方法的参数传递方式只有一种:值传递

子类无法访问父类被覆盖的方法,但可通过super或父类类名来调用。子类和父类的private方法同名不是重写。

外部类访问权限只需要给同一个包和任何位置,所以public和 默认 。内部类可以使用四种访问权限。

JUC:

New Thread(new Runnable(){重写run方法}).start





两同:1)方法名2)形参列表两小:1)返回值类型比父类更小或相等2)异常比父类方法更小或相等一大:子类权限比父类大或相等

被覆盖的方法不能为private




命名合法:开头_、$ 、_1_

接口定义的成员变量默认public static final,所有成员方法为 public /abstract,只能被public和abstract修饰

构造方法无法被程序调用

初始化顺序:静态成员变量、成员变量、构造方法

按值传递不会改变实际参数的数值

按引用传递不会改变实际参数的参考地址,但能改变实际参数的内容

编译失败,方法体中的有static



线程和进程的区别


Java中可作为gc root 的对象有哪些?

1 、 虚拟机栈(栈帧中的本地变量表)中引用的对象。

2、 本地方法栈中JNI(即一般说的native方法)引用的对象。

3、 方法区中的静态变量和常量引用的对象。

-ha���W��k

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,837评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,551评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,417评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,448评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,524评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,554评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,569评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,316评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,766评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,077评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,240评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,912评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,560评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,176评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,425评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,114评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,114评论 2 352

推荐阅读更多精彩内容

  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,230评论 11 349
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,612评论 18 399
  • 简评:因打错字而大规模停机,搞得大厂的运维们哭天喊地,亚马逊干得好。 3 月 1日凌晨,AWS 的云存储(S3服务...
    极小光阅读 701评论 0 0
  • 【幸福女孩 糖糖 一年级 坚持原创分享第226天 2018.4.16 星期一】 今天我在家又休息了一天,早...
    何亚珂阅读 367评论 0 0