java_1

上传人:豆浆 文档编号:26057309 上传时间:2017-12-22 格式:PPT 页数:78 大小:1.40MB
返回 下载 相关 举报
java_1_第1页
第1页 / 共78页
java_1_第2页
第2页 / 共78页
java_1_第3页
第3页 / 共78页
java_1_第4页
第4页 / 共78页
java_1_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《java_1》由会员分享,可在线阅读,更多相关《java_1(78页珍藏版)》请在金锄头文库上搜索。

1、北京神州数码思特奇信息技术股份有限公司研究院,JAVA语言基础,培训安排,课程的进度与内容会根据大家的要求程度适当调整,第一天上午:数组、封装、继承、多态、内部类 、日期时间问题、 Runtime类、 Properties类、 Process类及Class类用法、数组应用、对象的克隆 下午:泛型、集合、IO流、日志处理第二天上午:线程、socket编程,一维数组的声明方式:type var 或 type var;例如:int a;int a1;double b;Mydate c;Java语言中声明数组时不能指定其长度(数组中元素的个数),例如:int a5; /非法,Java类型数组,动态初始

2、化 数组定义与为数组元素分配空间并赋值的操作分开进行。,MyDate dates; dates = new MyDate3;dates0 = new MyDate(22, 7, 1964);dates1 = new MyDate(1, 1, 2000);dates2 = new MyDate(22, 12, 1964);,Java类型数组,静态初始化: 在定义数组的同时就为数组元素分配空间并赋值。,MyDate dates = new MyDate(22, 7, 1964), new MyDate(1, 1, 2000), new MyDate(22, 12, 1964);,Java类型数组,

3、创建元素为引用数据类型的数组,class MyDateint day;int month;int year; public MyDate(int d, int m, int y)day = d; month = m; year = y; public void display()System.out.println(day + “/ + month + “/ + year); ,Java类型数组,class Test public static void main(String args) MyDate m; m = new MyDate10; for ( int i=0; i10; i+ )

4、 mi =new MyDate(i+1 , i+1, 1990+i); mi.display(); ,main,栈内存,m,堆内存,创建元素为引用数据类型的数组演示,处内存状态,Java类型数组,class Test public static void main(String args) MyDate m; m = new MyDate10; for ( int i=0; i10; i+ ) mi =new MyDate(i+1, i+1, 1990+i); mi.display(); ,main,栈内存,m,null,MyDate对象,null,null,null,null,null,nu

5、ll,null,null,null,堆内存,创建元素为引用数据类型的数组演示,处内存状态,Java类型数组,Java中使用关键字new 创建数组对象,main,栈内存,m,*,MyDate对象,*,*,null,null,null,null,null,null,null,堆内存,1,1,1990,2,2,1991,3,3,1992,class Test public static void main(String args) MyDate m; m = new MyDate10; for ( int i=0; i10; i+ ) mi =new MyDate(i+1, i+1, 1990+i)

6、; mi.display(); ,for 循环执行三次后内存状态,Java类型数组,构造函数应包含哪些内容?构造函数多半定义一些初值或内存配置工作一个类可以有多个构造函数(重载),根据参数的不同决定执行哪一个.如果程序中没有定义构造函数,则创造实例时使用的是缺省函数,它是一个无内容的空函数.,对象的构造函数,class A static System.out.println(Static A);A() System.out.println(A();class B extends A C c= new C();static System.out.println(Static B);B() Sys

7、tem.out.println(B();public static void main(String args) new B();class C C() System.out.println(CC);,构造顺序,接口应用,接口其实是“在舍弃了多重继承缺点的同时,也舍弃了多重继承的优点”。也可以说,接口舍弃了“代码重用”,而保留了“接口重用”。接口有利于代码功能的扩展(增加新的功能)!而继承则有利于代码功能的修改(把旧的功能改成新的功能)!这里旧功能的修改和新功能的增加前提是不修改旧的功能,旧的功能仍然可以使用!旧类的代码也不做修改!,接口应用 举例说明,1.用继承修改旧的功能。 现在如果一代S

8、on1的功能打孩子,也就是方法hitChild()里边的功能实现有问题,我们要把具体实现修改掉,那么我们可以重新写一个新的二代子类Son11继承自一代子类Son1,并重写其hitChild()方法。 /二代子类 publicclassSon11extendsSon1 /重写父类打孩子方法 publicvoidhitChild() System.out.println(我是二代子类对此方法的新实现); ,2.用接口实现增加新的功能。 现在类Son1已经有了打孩子功能(也就是方法),而我们有了新的需求,我们需要它还要有一个新的功能宠孩子(新方法pet();)。而旧的代码不能动!那么我们可以定义一个

9、新的接口(PetInterFace),接口里定义这个方法pet()的声明。再重新写一个二代子类Son11,让它先继承类Son1,同时实现接口 PetInterFace!并实现接口里的 pet()方法! /新接口 publicinterfacePetInterFace /新功能方法 publicvoidpet(); /二代子类 publicclassSon11extendsSon1implementsPetInterFace /实现接口方法 publicvoidpet() System.out.println(父亲很爱我!); ,在类的定义体中、方法的外部可包含static语句块static语句

10、块仅在其所属的类被载入时执行一次static块通常用于初始化化static (类)属性,关键字final,在Java中声明类、属性和方法时,可使用关键字final来修饰。final标记的类不能被继承。final标记的方法不能被子类重写。final标记的变量(成员变量或局部变量)即成为常量,只能赋值一次。final标记的成员变量必须在声明的同时或在每个构造方法中显式赋值,然后才能使用。,关键字:final与static,在Java类中使用super来引用父类的成分super可用于访问父类中定义的属性super可用于调用父类中定义的成员方法super可用于在子类构造方法中调用父类的构造方法,关键字

11、:super,class Test public static void main(String args) Child child = new Child(); class Parent Parent() System.out.println(to construct Parent.); class Child extends ParentDelegatee delegatee = new Delegatee(); Child() super(); System.out.println(“to construct Child.”); class Delegatee Delegatee() S

12、ystem.out.println(to construct Delegatee.);/*结果是: ?,示例一,class TestSC public static void main(String args) SingleClass sc1 = SingleClass.sc;SingleClass sc2 = SingleClass.sc;sc1.test();sc2.test();class SingleClass int i = 0;private static SingleClass sc = new SingleClass();private SingleClass() public

13、 void test() System.out.println(hello + (+i);/*结果是: ?,示例二,class A static System.out.println(Static A);A() System.out.println(A();class B extends A C c= new C();static System.out.println(Static B);B() System.out.println(B();public static void main(String args) new B();class CC() System.out.println(CC);,示例三,class Test extends TT public void main(String args) Test t = new Test(Tom); public Test(String s) super(s); System.out.println(How do you do?); public Test() this(I am Tom); class TT public TT() System.out.println(What a pleasure!); public TT(String s) this(); System.out.println(I am +s); ,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号