java基础--(简单总结)

位运算:

System.out.println(5<<2);  //20左移:左边去掉两位,右边补2个0

System.out.println(5>>2);  //1  右移:右边去掉两位,左边补2个0

//练习:

int a = 8;

System.out.println(a>>2);  //2

System.out.println(a<<2);  //32

System.out.println(3&6);  //2  位与运算:位数对齐,全1才为1

System.out.println(3|6);  //7  位或运算:位数对齐,全0才为0

System.out.println(3^6);  //5  位异或运算:位数对齐,相同为0,不同为1

进制转换

二进制 :0b开头,0b0001

八进制 :0开头, 00001

十六进制 :0x开头,0x

技能点:将其他进制转换为10进制

公式:N进制转10进制:从右到左,N^0*数值+N^1*数值+..+N*(最高位)*数值

练习:0b111,0123, 0x1ef这些结果分别是多少?

7    83    15+14*16+256=495

技能点:将10进制转换为其他进制

公式:转为N进制,十进制数一直整除N直到商为0,余数从下往上排列

练习:50---八进制:062十六进制:0x32     0b110010

循环

三种循环的应用场景:

for: 循环次数可预见

while:循环次数不可预见

do.while: 循环次数不可预见; 至少处理一次

跳出:

continue;  //跳出当次循环,不影响下一次循环的执行

break;  //跳出循环

return:跳出方法

加标签(outer:)可以跳出标签所在外层循环, out:for(){ break out;

continue out;}

递归的条件:

1.具有递归的规律性

2.要有递归的出口

3.递归n值过大,会引起栈溢出,StackOverflowError

(尾递归:jdk1.8实现)

数组

(1)数组是用来存储一组相同数据类型的数据结构。

数组中的元素可以是任何数据类型(基本类型和引用类型)。

数组变量属于引用数据类型

String[] names = new String[3];  //创建一个存3个元素的String类型的数组

异常:java.lang.ArrayIndexOutOfBoundsException,NullPointException

(2)可变参数//int...a

public static int add(int...a){  //本质是数组

int sum = 0; for(int i=0;i

return sum;}

查找

二分查找法在数组中的应用: (二分查找前提: 数组元素已排好序)

定义一个数组: 1,4,7,12;在数组中查找7,找到则返回下标

作用: 比一般查找法效率要高,因为取一半进行比较;不需要一个一个元素比

分析: 通过下标取半

排序

冒泡排序:从左往右,相邻两数相比较,大的放右边,依次类推,比较n-1次 ,时间: o(n*2)

选择排序:第一个和后面所有比较,最小的放第一个,依次类推,时间: o(n*2)

插入排序:

面向对象

基本语法:Java最基本的单位是类,具体化-对象,对象的基本信息--属性,

对象的行为-方法

封装

属性不能直接被外部调用--限制权限private

通过方法进行封装---set/get

成员变量 VS 局部变量

成员变量:

1、成员变量定义在类中,在整个类中都可以被访问。

2、成员变量随着对象的建立而建立,随着对象的消失而消失,存在于对象所在的堆内存中。

3、成员变量有默认初始化值。

局部变量:

1、局部变量只定义在局部范围内,只在所属的区域有效。

2、局部变量存在于栈内存中,作用的范围结束,变量空间会自动释放。

3、局部变量没有默认初始化值

使用变量需要遵循的原则为:就近原则,首先在局部范围找,有就使用;接着在成员位置找。

static修饰的变量称为静态变量(类变量,被所有对象共享)

继承

面向对象的第二大特性

特性:  子类继承了父类,则可使用父类的属性和方法

构造方法是否具有继承性?不具有

继承,私有的方法和变量会不会被继承?不会

Object: 是面向对象中类的老祖宗,不写继承默认就有

分析打印流程:

只要是打印对象,如果当前类没有重写,则调用的是父类的toString方法:包名@hash值

super、this

super.xxx来引用父类的成员或方法

super();  //默认有调用父类的构造方法

this()--调当前类构造方法,形参与成员名字重名,用this来区分

equals

*1. “==”: 两个字符串对象用等号,比较的是对象的地址

*2. equals: 在OBj类的对象的equals方法,比较的是地址;

*          String类重写的方法,则比较的是内容

final

1. final修饰属性:

final修饰的属性必须初始化,不能改变final修饰的属性的值

应用常用:  static final 定义状态值是绝配

public static final int HTTP_OK = 1;

2. final修饰类:(太监类)

3. final修饰方法:父类的方法不能重写

static

1.Static修饰属性: 静态成员属性 VS 成员属性

成员属性: 每个对象独享一份成员属性调用:this.属性

静态成员属性: 每个对象共享一份成员属性调用:类名.属性

2.Static修饰代码块: 静态代码块 VS 代码块

代码块: 每个对象都会初始执行一次代码块

静态代码块:无论有多少个对象只加载一次静态代码块

3.Static修饰方法: 静态方法 VS 成员方法

成员方法: 成员方法属于对象,调用方式:对象.方法

静态方法: 属于类,调用方式:类.方法(强烈推荐)

结论:只要加了static修饰的方法、代码块、属性;都不属于对象,属于类;

他的应用不依赖对象,且在对象之前就已经出现

问题: 1. 在成员方法中能否使用静态变量?可以

2. 在静态方法中能否使用成员变量?不可以

3. 在静态方法中能否调用成员方法?不可以

4. 为什么在main方法中加static?共享特性

应用场景: 1.修饰属性:    用作状态值的判断

2.修饰代码块: 当程序的某个功能只需初始化一次

3.修饰方法:    充当工具类

多态(实现控制反转)

多态,是面向对象的程序设计语言最核心的特征。意味着一个对象有着多重特

征,可以在特定的情况下,表现不同的状态,从而对应着不同的属性和方法。

继承:父类对象指向子类对象,可以调用子类重写的方法

接口:接口类对象调用实现类对象,可以调用实现类重写的方法

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

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,562评论 18 399
  • Win7下如何打开DOS控制台? a:开始--所有程序--附件--命令提示符 b:开始--搜索程序和文件--cmd...
    逍遥叹6阅读 1,586评论 4 12
  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 2,627评论 0 11
  • (一)Java部分 1、列举出JAVA中6个比较常用的包【天威诚信面试题】 【参考答案】 java.lang;ja...
    独云阅读 7,064评论 0 62
  • 发生的事有许多,真真的刻骨铭心的事也能数得下来。关于我在不羁的年华里的友情。我记得你,一直的记得,你。 来者是客。...
    一位世人阅读 218评论 0 0