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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

面向对象over.docx

1、面向对象over数据类型 1基本数据类型 1引用类型 3控制语句 3顺序结构 3选择结构 3循环结构 4面向对象 5面向过程和面向对象的区别 5类和对象 5成员变量 5方法 5方法的重载(overload) 5构造方法 5内存分析 5package 6import 6this 6static 6super 6面向对象的三大特征 6封装 6继承 6方法的重写(override) 6多态 6抽象类 7接口 7面向接口编程 7数据类型基本数据类型a) 数值型i. 整型1. byte 1个字节(256) -128-1272. short 2个字节(65536) 正负3万3. int 4个字节 正负21

2、亿4. long 8个字节ii. 浮点型1. float 4个字节 2. double 8个字节 注: 类型的自动转换 类型的强制转换/* double d1 = 0.1; double d2 = 0.5-0.4; System.out.println(d2); if(d1=d2) System.out.println(dddd); else System.out.println(eeeee); */ float f1 = 0.134F; float f2 = (float)0.134; double d1 = 0.345F; byte b = 123; /int可以自动转换为byte,sho

3、rt,char。只要不超过它们的表述范围。 double d = 23234; double d2 = 123L*234; /表达式类型的自动提升 long i = 234231L*234233*23423; / System.out.println(i);b) 字符型 2个字节 65536 unicode字符集c) 布尔型true, false char c1 = a; char c2 = 中; char 中2= 国; boolean b = true; if(b=true) System.out.println(true); if(b) /建议此种写法! System.out.printl

4、n(true); 引用类型控制语句顺序结构选择结构1. 单选择结构2. 双选择结构3. 多选择结构boolean b = true; if(b) System.out.println(true); if(b) System.out.println(true); else System.out.println(false); int age = 18; if(age100) System.out.println(老寿星); else if(age80) System.out.println(小寿星); else if(age60) System.out.println(老年人); else if

5、(age30) System.out.println(中年人); else if(age18) System.out.println(青年人); else System.out.println(小屁孩); int grade = 1; /1,2,3,4,5 switch(grade) /多值选择结构! case 1: case 2: System.out.println(学的凑合); break; case 3: System.out.println(学的一般); break; case 4: System.out.println(学的不及格); break; case 5: System.o

6、ut.println(太差了!); break; if(grade=1) /switch可以完全使用if else if代替! else if(grade=2) 循环结构whiledo whilefor /* int i = 0; /初始化 while(i10) /条件判断 System.out.println(i); /循环体 i+; /迭代 */ /* for(int i=0;i10;i+) /初始化、条件判断、迭代 /循环体 System.out.println(i); */ int a=0; do System.out.println(a); a+; while(a0); /先执行,后

7、判断! while:先判断,后执行! 面向对象面向过程和面向对象的区别面向对象帮助我们从宏观上把握项目的整体关系,微观上实现仍然是面向过程。类和对象抽象(抽出事务象的部分)和具体。类是对象的模板。成员变量(field,属性)要点:1. 成员变量的自动初始化。整数:0,浮点数:0.0, Boolean:false. 引用类型:null char:u0000public class Person int age=13; String name; int score; public static void main(String args) Person p = new Person(); p.ag

8、e = 23; p.name=张三; System.out.println(p.name); 方法public class Person int age=13; String name; int score; void test1() System.out.println(Person.test1(); int test2() System.out.println(Person.test2(); return 3; /return两个作用:返回值,结束方法的运行! int test3(int a,double d) System.out.println(Person.test2(); retu

9、rn (int)(a+d); public static void main(String args) Person p = new Person(); p.age = 23; p.name=张三; int a = p.test2(); System.out.println(p.name); Return既可以用于返回值,也可以用于终止方法的执行:void test2() if(man) System.out.println(man); System.out.println(man); System.out.println(man); void test3() if(!man) return;

10、 System.out.println(man); System.out.println(man); System.out.println(man); 方法的重载(overload) 方法名相同、形参列表不同(类型不同/个数不同/顺序不同)则构成重载。public class Calculator int add(int a,int b) System.out.println(sddsds); return a+b; int add(int a, int b, int c) return a+b+c; double add(double a, double b) return a+b; dou

11、ble add(double a, int b) return a+b; double add(int a, double b) return a+b; public static void main(String args) Calculator c = new Calculator(); System.out.println(c.add(3, 4); System.out.println(c.add(3, 4,5); System.out.println(c.add(3.0, 4.0); 构造方法(构造器 constructor)构造方法是特殊的方法!特殊在什么地方:1. 方法名必须和类名

12、保持一致!2. 无返回值(事实上,他是有返回值的。)3. 需要通过new来调用!4. 如果我们没有定义构造器,则编译器会帮助我们自动添加;如果我们手动定义构造器,则编译器不会帮助我们添加无参构造器。public class Person int age; String name; int score; void run() System.out.println(我在跑步!); Person(int age) this.age = age; System.out.println(正在构造一个person对象!); Person() public static void main(String a

13、rgs) Person p = new Person(); p.run(); 内存分析堆:存放new出的对象。栈:存放局部变量(方法内部定义的变量)方法区:存放类的信息、static变量、字符串常量等。public class Person int age=13; String name; int score; public static void main(String args) Person p = new Person(); p.age = 23; p.name=张三; Person p2 = new Person(); p2.name=李四; System.out.println(3

14、3=44); System.out.println(p=p2); String str = 张三; String str2 = 张三; String str3 = new String(李四); String str4 = new String(李四); System.out.println(str = str2); System.out.println(str3 = str4); System.out.println(哈哈); package包的两个基本作用:1. 解决类的重名问题2. 管理类包的具体用法:1. 使用package, 必须位于文件的第一句非注释性语句!2. 包名的规范:域名倒

15、着写+有意义的名字常见的包:java.lang 核心包(不需要我们import,直接可以使用!)java.io 输入输出流java.util 工具包 网络java.awt java.sql import用来引入其他包中的类,方便我们使用。import test.Person;import test.*;静态导入:import static , 导入某个类的静态属性和方法!this用来指定当前的对象!如果this位于构造方法内,则表示正要初始化的对象。如果this位于普通方法内,则表示调用该方法的对象(即当前对象)package com.bjsxt.j2se;public class TestT

16、his private int a; private int b; private int c; TestThis(int a,int b) this.a = a; this.b = b; TestThis(int a,int b, int c) this(a,b); /Constructor call must be the first statement in a constructor this.c = c; public static void main(String args) staticstatic变量位于方法区,被所有的该类的对象共享,可以称为类属性(静态属性)、类方法(静态方

17、法)。Static变量可以使用:类名.变量名来引用。static变量(方法)是从属于类的。可以通过:类.名字 来调用普通变量(方法)是从属于对象的。可以通过:对象名.名字 来调用。static方法中,不能调用普通方法或普通属性。final final 修饰普通变量: 常量!super 面向对象的三大特征封装/隐藏可以将类的内部实现细节进行封装(隐藏了内部实现的细节、复杂性),方便外部调用。这样的话,就利于软件的维护和扩展。关键字同一个类同一个包子类所有类privateXXXdefault(默认,不需要写出来)XXprotectedXpublic封装的使用方式:1 所有的属性都使用private

18、。 但是一般会提供get/set方法便于访问和设置属性。2 除非确认你的方法要被外部调用,否则一般都可以使用private。继承 子类扩展了父类。使用extends关键字。 JAVA类的继承中,只有单继承,没有多继承。为什么需要继承?1. 抽象概念,便于建模2. 代码复用Object类 Object是所有类的根类!掌握:toString()方法的使用! 用来打印对象的字符串表示形式!学习使用API文档学习怎么查询API文档学习使用DOC注释,生成项目的API文档(右键单击项目exportjava, javadocnext,finish,yes)方法的重写(override)多态 多态的三个必要

19、条件:继承、重写、父类引用指向子类对象。public class TestOverride public static void main(String args) TestOverride to = new TestOverride(); NokiaMobile nm = new NokiaMobile(); Mobile op = new OppoMobile(); /编译时类型 变量名 = new 运行时类型(); op.call(233223); OppoMobile om = (OppoMobile)op; /强制转型 om.callByOppo(23423);/ DazhaiMob

20、ile dm = new DazhaiMobile(); to.test(op); void test(Mobile nm) nm.call(888888); /* void test(OppoMobile nm) nm.call(888888); void test(DazhaiMobile nm) nm.call(888888); */class Mobile public void call(int num) System.out.println(使用手机打电话给:+num); class NokiaMobile extends Mobile public void call(int n

21、um)/ super.call(num); System.out.println(使用诺基亚手机打电话给:+num); class OppoMobile extends Mobile public void call(int num) System.out.println(使用Oppo手机打电话给:+num); public void callByOppo(int num) System.out.println(333333使用Oppo手机打电话给:+num); class DazhaiMobile extends Mobile public void call(int num) System

22、.out.println(使用Dazhai手机打电话给:+num); 抽象类 抽象类:包含抽象方法的类。抽象方法必须被子类重写。注意:1. 抽象类可以包含构造方法,但是不能被实例化。2. 抽象类包含了:具体实现和规范!接口为什么需要接口?项目需求是多变的!我们要从这些多变的需求中抽象出不变的内容,以不变应万变,提高我们的开发效率。接口是做什么的? 用来描述规范!体现了现实中这样的逻辑“如果你是则必须能.”。接口:只包含了抽象方法,常量!public interface Fly public static final int MAX_HEIGHT=100; int MIN_HEIGHT=1; /

23、常量总是:public static final void fly(); /方法总是:public abstract void stop(); void startup(); void upup(); void down();如何使用接口? class Airbus implements Fly Override public void down() Override public void fly() Override public void startup() Override public void stop() Override public void upup() 一个类可以实现多个接口接口可以多继承! interface IA void aaa();interface IB void bbb();interface IC extends IA,IB 面向接口编程!

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1