ImageVerifierCode 换一换
格式:DOCX , 页数:29 ,大小:540.44KB ,
资源ID:8099682      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-8099682.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(JAVA基础知识点梳理精简.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

JAVA基础知识点梳理精简.docx

1、JAVA基础知识点梳理精简JAVA基础知识点梳理(重点笔记)1、标识符规则a) 可以由字母、数字、下划线、美元符$组成,不能以数字开头b) 不能是java的关键字和保留字c) 严格区分大小写,且尽量见名知意2、变量public class test public static void main(String args) String love=imooc; System.out.println(变量love的内容是:+love); love=i love imooc; System.out.println(重新赋值后变量love的内容是+love); 3、变量命名习惯:a) 第一个单词的首字

2、母小写,其后单词的首字母大写(骆驼式),myAgeb) 变量命名时,尽量简短且能清楚的表达变量的作用,见名知意,如stuNamePs: java变量长度没有限制,但是严格区分大小写4、数据类型a) int :4个字节 b) Double:8个字节c) Float:4个字节 float变量赋值在数值后添加字母f float he=12.2f;d) Char:2个字节 char 变量赋值使用单引号e) Boolean:1个字节 取值只能为:true和falsef) String :引用数据类型5、Java常量的应用:a) Final 数据类型 常量名=值;b) 常量名一般使用大写字符6、逻辑运算符

3、:a) :异或 有且只有一个为true 则返回true7、条件运算符:a) () ? 正确表达式 : 错误表达式i. Eg: String str=(85)? “yes” : “no”8、运算符优先级最高的是:()9、输出换行:System.out.println();10、/循环语句练习package ttt;public class test6 public static void main (String args) int i=1; int sum1=0; for(;i9;i+) bb=bb/10; System.out.println(i 的值为+i); 14、数组a) 声明数组:i

4、. 数组类型 数组名;ii. 数组类型 数组名;b) 分配空间:i. 数组名 =new 数据类型【数组长度】Eg: socres = new int5;合并: int socres=new int5;c) int sorces=1,2,2,3;等价于: int sorces=new int1,2,2,3;d) 数组名.length 获取数组的长度e) arrays类操作java中的数组1、排序:arrays.sort(数组名) (升序)2、将数组转换为字符串:arrays.toString(数组名);(可以实现把多个数组元素连接在一起,元素中间用逗号和空格隔开)。f) foreach形式的fo

5、r语句使用:for(int i : words) System.out.print(i); 15、java中无参无返方法的调用a) 定义:public void show() 方法名字第一个词小写,之后首字母大写b) 调用:i. 创建类的对象ii. 对象名.方法名();16、java中无参有返方法的调用a) Public int show() return sum; b) 注意:i. 如果方法的返回类型为void,则方法中不能使用return返回值ii. 方法的返回值最多只能有一个,不能返回多个值iii. 方法返回值的类型必须兼容17、方法的重载:a) 必须是在同一个类中b) 方法名相同c)

6、方法参数的个数、顺序或类型不同d) 与方法的修饰符或返回值没有关系18、随机数方法:(int)(Math.random()*100) 不需要导包19、类和对象:a) 类是模子,确定对象将会拥有的特征(属性)和行为(方法)b) 类是对象的模型,具有相同属性和方法的一组对象的集合c) 对象:i. 属性对象具有的各种特征ii. 每个对象的每个属性都有特定值d) 类是抽象概念,仅仅是模板,比如“手机”;对象是一个具体的实体e) 所有的java程序都是以类class为组织单元,由属性和方法组成f) Java对象使用步骤:i. 类名 对象名=new 类名();ii. Phone phone=new Pho

7、ne();iii. 引用属性:phone.screen=5;/给screen属性赋值5iv. 引用方法:phone.send();/调用send()方法20、成员变量和局部变量的区别a) 作用域不同b) 初始值不同c) 在同一个方法中,不允许有同名局部变量d) 两类变量同名时,局部变量具有更高的优先级21、构造方法:a) 使用new+构造方法 创建一个新的对象b) 构造方法是定义在java类中的一个用来初始化对象的方法c) 构造方法与类同名且没有返回值v. 构造方法的格式:public 构造方法名() /初始化代码 vi. Phone phone=new Phone();vii. 构造方法的名

8、字与类名相同d) 当没有指定构造方法是,系统会自动添加无参的构造方法e) 当有指定构造方法,无论是有参、无参的构造方法,都不会自动添加无参的构造方法f) 构造方法的重载:方法名相同,但参数不同的多个方法,系统自动选择22、静态变量static:a) Static可以修饰变量、方法、代码块b) 访问(引用):类名.变量名 hello.hahac) 定义: public static String haha=”imoc”;d) Public:表示公开的、公有的23、静态方法:a) 访问:类名.方法名();b) 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员。c) 如果调用非静态成

9、员,可以通过对象来访问d) 在普通的方法中可以直接访问同类的非静态变量和静态变量e) 静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。24、程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。25、面向对象的三大特性:封装、继承、多态26、封装:a) 概念:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问b) 好处:只能通过规定的方法访问数据;隐藏类的实例细节,方便修改和实现c) 实现步骤:i. 修改属性的可见性:设为private : private int a;ii. 创建getter/sette

10、r方法:用于属性的读写iii. 在getter、setter方法中加入属性的控制语句:对属性的合法性进行判断iv. (其实就是通过调用方法去读写属性)v. 可以通过eclipse 中source菜单中select getters and setters to create27、java中的包:a) 作用:管理java文件;解决同名文件冲突b) 定义包:package包名i. 必须放在java源程序的第一行ii. 包名间可以使用“.”隔开iii. Eg:com.imooc.myclass;c) 系统包:Java.lang.(类):包含java语言基础的类Java.util.(类):包含java语

11、言中各种工具类Java.io.(类):只包含输入、输出相关功能的表d) 包的使用:I. 可以通过import关键字,在某个文件使用其他文件中的类。Import com.imooc.music.myclassIi. Java中,包的命名规范是全小写字母拼音Iii.使用的时候不但可以加载某个包下的所有文件,也可以加载某个具体子包下的所有文件访问修饰符的总结访问修饰符本类同包子类其他private默认protectedpublic28、this关键字:a) 代表当前对象i. This.属性 操作当前对象的属性ii. This.方法 调用当前对象的方法b) 封装对象的属性的时候经常会使用this关键字

12、29、java中的内部类:(包含内部类的类称为外部类)a) 内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类b) 内部类的方法可以直接访问外部类的所有数据,包括隐私的数据c) 内部类所实现的功能使用外部类同样可以实现,只是有时使用内部类更方便d) 内部类可以分为:i. 成员内部类1. 内部类中定义的方法可以直接访问外部类中的数据,不受访问控制符的影响2. 定义一个内部类对象: 内部类 对象名 =外部类对象.new 内部类()3. 外部类不能直接使用内部类的成员和方法,可以先创建内部类的对象,然后通过内部类的对象来访问其他成员变量和方法4. 外部类和内部类具

13、有相同的成员变量或方法,则内部类默认访问自己的成员变量或方法,如果要访问外部类的成员变量,可以使用this关键字ii. 静态内部类1. 静态内部类不能直接访问外部类的非静态成员,但可以通过 new外部类().成员 的方式访问2. 如果外部类的静态成员与内部类的成员名称相同,可以通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不同,则可以通过“成员名”直接调用外部类的静态成员3. 创建静态内部类的对象时,不需要外部类的对象,可以直接创建 内部类 对象名=new 内部类();iii. 方法内部类1. 方法内部类就是定义在外部类的方法中,方法内部类只在该方法的内部可

14、见,即只在该方法内可以使用。2. 由于方法内部类不能在外部类的方法以外的地方使用,因此方法内部类不能使用访问控制符和static修饰符iv. 匿名内部类30、继承:a) Java里都是单继承b) 好处:i. 子类直接拥有父类的所有属性和方法,但private除外ii. 实现代码的复用iii. Class 子类 extends 父类c) Final关键字i. 修饰类:则该类不允许被继承ii. 修饰方法:则该方法不允许被覆盖(重写)iii. 修饰属性:则该类的属性不会进行隐式的初始化(类的初始化属性必须有值)或在构造方法中赋值iv. 修饰变量,则变量的值只能赋一次,即常量d) Super关键字i.

15、 在对象的内部使用,可以代表父类对象ii. 方位父类的属性,或方法, super.age super.eat()31、Object类:a) Object类是所有类的父类,如果一个类没有使用extends关键字明确标识继承另一个类,那么这个类默认继承object类b) Object类中的方法,适合所有子类c) 方法:i. toString()方法:1. 在object类里面定义的tostring()方法的时候返回的对象的哈希码(对象地址字符串)(用来区分对象)2. 如:直接输出dog对象的值:System.out.println(dog);3. 生成:source菜单栏generate toSt

16、ring()生成输出属性的方法ii. Equals()方法:1. 比较的是对象的引用是否指向同一块内存地址:Dog dog=new Dog();2. 生成:source菜单栏generate hashcode()and equals().a) 类对象:姓名、年龄、身高.obj.getclass()b) 类的对象:小灰、25、170.obj3. 调用:if(dog1.equals(dog2)判断两个对象是否相同32、多态:(继承是多态的基础)a) 引用多态:i. 父类的引用可以指向本类的对象:animals obj1=new animals();ii. 父类的引用可以指向子类的对象: anima

17、ls obj2=new dog();iii. 注意:子类的引用不可以指向父类的对象:dog obj3=new animals();b) 方法多态:i. 创建本类对象时,调用的方法为本类方法ii. 创建子类对象时,调用的方法为子类重写的方法或者继承的方法33、多态中的引用类型转换a) 向上类型转换(隐式/自动类型转换),是小类型到大类型的转换,无风险b) 向下类型转行(强制类型转换),是大类型到小类型的转换,有风险,溢出c) Instanceof 运算符,来解决引用对象时的类型,避免类型转换的安全问题i. Eg:Dog dog=new Dog();Animal anmal=dog;/自动类型提升

18、,向上类型转换Dog dog2=(Dog)animal;/强制类型转换,向下类型转换Cat cat=(Cat)animal;/编译时Cat类型;运行时Dog类型,报错可以替换为:if (animal instanceof Cat)Cat cat=(Cat)animal;34、抽象类:a) 语法:抽象类前使用abstract关键字修饰,则该类为抽象类b) 作用:限制规定子类必须实现某些方法,但不关注实现细节c) 规则:i. Abstract定义抽象类ii. Abstract定义抽象方法,只有声明,不需要实现iii. 包含抽象方法的类是抽象类iv. 抽象类中可以包含普通的方法,也可以没有抽象方法v

19、. 抽象类不能直接创建,可以定义引用变量d) 现有Shape图形类,用Rectangle矩形和Circle圆形子类,求图形的周长和面积:Shape.java:package com.amooc;public abstract class Shape public abstract void zhouchang(double l,double w); public abstract void mianji(double l,double w); public abstract void zhouchang2(double r); public abstract void mianji2(doub

20、le r);Rectangle.java:package com.amooc;public class Rectangle extends Shape public void zhouchang(double l,double w) double z; z=2*(l+w); System.out.println(长为:+l+ ,宽为:+w+ ,的长方形周长是:+z); public void mianji(double l,double w) double m; m=l*w; System.out.println(长为:+l+ ,宽为:+w+ ,的长方形面积是:+m); public void

21、 zhouchang2(double r) double z; z=2*3.14*r; System.out.println(半径为:+r+ ,的圆形周长是:+z); public void mianji2(double r) double m; m=3.14*r*r; System.out.println(半径为:+r+ ,的圆形面积是:+m); imooc1.java:package com.amooc;public class imooc1 public static void main(String args) Rectangle z1=new Rectangle(); Shape m

22、1=new Rectangle(); Shape z2=new Rectangle(); Shape m2=new Rectangle(); z1.zhouchang(3,4); m1.mianji(3,4); z2.zhouchang2(3); m2.mianji2(3); 35、接口:a) 概念:接口可以理解为一种特殊的类,由全局常量和公共的抽象方法所组成。类是一种实现体,而接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部数据,也不关心这些类里方法的实现细节,它只规定这些类里必须提供某些方法b) 定义:和类定义不同,定义接口不再使用class关键字,而是使用interface关键

23、字c) 基本语法:修饰符 interface 接口名 extends 父接口1,父接口2.零个到多个常量定义零个到多个抽象方法的定义接口是用来被继承、被实现的,修饰符一般建议用public注:不能使用private和protected修饰接口d) 接口定义常量:接口中的属性是常量,即使定义时不添加 public static final修饰符,系统也会自动加上e) 接口定义方法:接口中的方法只能是抽象方法,总是使用,即使定义时不添加public abstract ,系统也会自动加上f) 使用接口1:i. 一个类可以实现一个或多个接口,实现接口使用implements关键字,java中一个类只能

24、继承一个父类是不够灵活的,通过实现多个接口可以做补充ii. 继承父类实现接口的语法为:修饰符 class 类名 extends 父类 implements 接口1,接口2.类体部分/如果继承了抽象类,需要实现继承的抽象方法;要实现接口中的抽象方法.如果要继承父类,继承父类必须在实现接口之前Eg: new interface Ijiekou (命名习惯,名字前加大写I) g) 使用接口2:i. 接口在使用过程当中,还经常与匿名内部类配合使用,匿名内部类就是没有名字的内部类,多用于关注实现而不关注实现类的名称ii. 语法格式:Interface i=new Interface()public vo

25、id method()System.out.println(“匿名内部类实现接口的方式”);注意:末尾以分号结束或:new Interface()Public void playGame()System.out.println(“使用匿名内部类的方式实现接口”);.playGame();h) 在接口中定义方法geta(),正确的格式是:void geta();注:接口方法不能有方法体,同时方法的访问修饰符不能为private和protected36、UML:(unified modeling language),又称统一建模语言或标准建模语言。是一个支持模型化和软件系统开发的图形化语言,为软件

26、开发的所有阶段提供模型化和可视化支持。a) 用例图:(the use case diagram)i. 用例图能够以可视化的方式,表达系统如何满足所收集的业务规则,以及特定的用户需求等信息b) 序列图:(the sequence diagram)i. 序列图用于按照交互发生的一系列顺序,显示对象之间的这些交互c) 类图:(the class diagram)i. UML类图业务逻辑和所有支持结构一同被用于定义全部的代码结构d) UML建模工具:i. Visio、rational rose、powerdesign37、综合练习:答答租车系统a) 功能:i. 展示所有可租车辆ii. 选择车型、租车量

27、iii. 展示租车清单,包含:总金额、总载货量及其车型、总载人量及其车型b) 项目分析:i. 数据模型分析1. 通过对现实世界的事与物主要特征的分析、抽象,为信息系统的实施提供数据存取的数据结构以及相应的约束2. 数据结构的组成:操作(方法)、属性ii. 业务模型分析iii. 显示和流程分析38、异常:走路被树叶绊倒,吃糖饼烫后脑勺,考试快交卷了才发现反面还有题.a) 组织图:b) 处理异常:i. try-catch 以及try-catch-finallyii. Eg:Try/一些会抛出异常的方法catch(Exception e)/处理该异常的代码块 finally/最终将要执行的代码iii

28、.package com.imooc0325;public class test1 /* divide:除数 result:结果 try-catch捕获while循环 每次循环,divide减1,result=result+100/divide 如果:捕获异常,打印输出抛出异常了!,返回-1 否则:返回result */ public int test() int divide =10; int result =100; try while(divide-1) divide-; result =result+100/divide; return result; catch(Exception e) e.printStackTrace();/打印异常具体信息 System.out.println(循环抛出异常了!); return -1; finally S

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2