java笔记

一旦将一个方法定义在某个类的类体内,如果这个方法使用了static修饰,则这个方法属于这个类,否则这个方法属于这个类的实例,执行方法时必须使用类或对象作为调用者。

同一个类的一个方法调用另外一个方法时,如果被调用方法是普通方法,则默认使用this作为调用者,如果被调用方法是静态方法,则默认使用类作为调用者。

值传递:就是将实际参数值的副本传入方法内,而参数本省不会受到任何影响。

基本类型参数直接复制参数本身。

非基本类型参数复制对这个对象的引用,但是对象只有一个。

形参个数可变:允许为方法指定数量不确定的形参,多个参数值被当做数组传入。

方法递归:一个方法内调用他自身,被称为方法递归。

成员变量和局部变量:根据定义变量的位置的不同。

Private:只有在该类内部访问。

Protected:可以被同一个包中的其他类访问,也可以被不同包中但是是子类的类访问。

Public:不同类不同包都可以访问。

子类不会获得父类的构造器,但是子类构造器里可以调用父类构造器的初始化代码,在子类构造器中调用父类构造器使用super调用来完成。

private class CrimeHolderextendsRecyclerView.

ViewHolder{

public TextView mTitleTextView;

public CrimeHolder(View itemView){

super(itemView);//调用父类的构造方法,创建Holder

mTitleTextView = (TextView)itemView;

}

}

多态:java引用变量有两个类型:一个是编译时类型,一个是运行时类型。编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定。如果编译时类型和运行时类型不一致,就可能出现所谓的多态。

Java允许把一个子类对象直接赋值给一个父类引用变量(向上转型upcasting)

例如:Object p = new Person();p只能调用object类里的方法,而不能调用person类里的方法。

强制类型转换:引用类型转换只能在具有继承关系的两个类型之间。如果把一个父类类型转换成一个子类类型,则这个对象必须是子类实例(即编译时类型为父类类型,而运行时的类型是子类类型)

Instanceof运算符能判断是否能够进行强制类型转换,a instanceof String

前一个操作数通常是一个类,用于判断前面的对象是否是后面的类,或是其之类、实现类的实例。如果是返回TRUE,否则返回FALSE。

初始化块总是在构造方法执行之前执行。

几乎所有的操作系统都支持进程的概念,所有运行中的任务通常对应一个进程。内部可能包含多个顺序执行流,每个执行流就是一个线程。

进程的三个特征:1.独立性2.动态性3.并发性

归纳起来就是:操作系统可以同时执行多个任务,每个任务就是进程:进程可以同时执行多个任务,每个任务就是线程。

继承Thread类创建线程类:

1.定义Thread类的子类,并重写该类的run()方法,该run()方法的方法体代表了线程需要完成的任务。因此把run()方法称为线程执行体。

2.创建Thread子类的实例,即创建的线程对象。

3. 调用线程对象的start()方法来启动该线程。

接口:抽象类是从多个类中抽象出来的模板如果将这种抽象进行的更彻底,则可以提炼出一种更加特殊的“抽象类”——接口,接口里不能包含普通方法,所有的方法只能是抽象方法。

接口里可以包含成员变量(只能是静态常量)、方法(只能是抽象实例方法、类方法或默认方法)、内部类(包括内部接口、枚举)定义。

在接口中定义成员变量时系统会自动增加public static final修饰。

接口支持多继承。

接口主要有如下用途:

1.定义变量,也可以用于进行强制类型转换

2.调用接口中定义的常量

3.被其他类实现

接口和抽象类:

1.接口和抽象类都不能被实例化,他们都位于继承树的顶端,用于被其他类继承和实现。

2.接口和抽象类都可以包含抽象方法,实现接口或者继承抽象类的普通子类都必须实现这些抽象方法。

接口与抽象类的不同:不同主要体现在二者的设计目的上,接口作为系统与外界交互的窗口,接口体现的是一种规范。对于接口实现者而言,接口规定了实现者必须向外提供哪些服务(以方法的形式来提供);对于接口调用者而言接口规定了调用者可以调用哪些服务,以及如何调用这些服务。

1.接口里只能包含抽象方法和默认方法,不能作为普通方法提供实现;抽象类则完全可以包含普通方法。

2.接口里不能定义静态方法;抽象类里可以定义静态方法。

3.接口里只能定义静态常量,不能定义普通成员变量;抽象类里则既可以定义普通成员变量,亦可以定义静态常量。

4.接口里不包含构造器;抽象类里可以包含构造器,抽象类的构造器并不是用于创建对象,而是让其子类调用这些构造器来完成属于抽象类的初始化操作。

5.接口里不能包含初始化块;但是抽象类完全可以包含初始化块。

6.一个类最多只能有一个直接父类,包括抽象类;但是一个类可以实现多个接口,通过实现多个接口可以弥补java单继承的不足。

JAVA中字符串的不变性

7.1、String对象创建后则不能被修改,是不可变的,所谓的修改其实是创建了新的对象,所指向的内存空间不同。

8.2、 一旦一个字符串在内存中创建,则这个字符串将不可改变。如果需要一个可以改变的字符串,我们可以使用StringBuffer或者StringBuilder(后面章节中会讲到)。

9.3、 每次new一个字符串就是产生一个新的对象,即便两个字符串的内容相同,使用 ”==” 比较时也为 ”false”,如果只需比较内容是否相同,应使用 ”equals()” 方法(前面条件运算符章节讲过哦~~)

�$

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

推荐阅读更多精彩内容

  • 面向对象主要针对面向过程。 面向过程的基本单元是函数。 什么是对象:EVERYTHING IS OBJECT(万物...
    sinpi阅读 1,041评论 0 4
  • java笔记第一天 == 和 equals ==比较的比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量...
    jmychou阅读 1,483评论 0 3
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,560评论 18 399
  • 《Effective Java》笔记(上) 对象的创建与销毁 Item 1: 使用static工厂方法,而不是构造...
    OCNYang阅读 2,579评论 2 17
  • 不论在什么领域,提高技能与能力的最有效方法都遵循着一系列普遍原则,就是不断的训练。你可能听说过一个被误读很久的概念...
    小秘来了阅读 267评论 0 0