java

0 讲( 00:34: [@more@]

0讲(00:34:

1、 java sejava eejava me

a) java面向对象编程

b) java图形界面

c) java数据库编程

d) java 文件io

e) java网络编程

f) java 多线程

1(1:04:39)

1、 java开发工具

a) 记事本:

b) Jcreateor

c) Jbuilder

d) Netbean

e) eclipse

2、 java语言的特点

a) 简单的

b) 面向对象的

c) 跨平台的

d) 高性能的

3、 JDK

a) Jre(java运行环境)

b) Java的工具包(如:java编译器、java解释执行器)

c) Java的类库(3600多个,常用150多个)--JDK API 1.6.0

d) JDK配置:PATH=

4、 Hello Work

a)

5、 JAVA虚拟机(JVM

2

1、 类型占用内存空间:

a) Int4个字节;

b) Long8个字节;

2、 一个程序就是一个世界

a) 变量

3、 java基本数据类型

a) 整数类型

i. Byte:一个字节,-128127 -----2(n字节*8)次方至2(n字节*8)-1)

ii. Short:两个字节,-3276832767

iii. Int:四个字节,

iv. Long:八个字节。

b) 小数(浮点)类型

i. Float

ii. Double

c) 布尔类型

i. Booleanfalse or true

d) 字符类型

i. Char:单个字符。

ii. Char char1=’q’

iii. int test1=’a’+’b’----转化为ASCII,再相加 97+98=195

iv. char test2=’a’+’b’----字符‘195’在ASCII越界,输出:?

1. JAVA中,对char进行运算的时候,直接当做ASCII码对应的整数对待。

v. char test3=’---中方使用unicode码表示。

4、 定义变量、初始化变量、赋值。

5、 基本数据类型的转换

a) Int a=1.2;违反数据从高精度向低精度转化的原则。

i. Byte--精度从低向高。

b) float a=3.4;在java中,小数据默认为double类型。

c) int a=(int) 1.2 int b=(int) 1.9

d) int a=1double b=4.5a=b

e) int a=3int b=a+3.4

i. 当一个整数和一个double运算的时候,运算结果会向高精度转。

3讲(49:54

1、 a++++a

a) int a=3int b= ++((++a)--)

2、 三大流程控制

a) 顺序控制

b) 分支控制

i. 单分支

ii. 比分支

iii. 多分支

1. swith语句;break跳出break

c) 循环控制

4讲(1:00:10

1、 swith

a) swith中的可用数据类型主要:允许byteshortintcharenum等。

2、 循环控制

a) For循环

i. For(int i=0;i<10;i++)

b) whlie循环

i. while(){i++;}

cdo while循环

i. do{i++;}while(i<10)

3、 金字塔

5(00:34:33)

1、 类与对象

a)

i. 属性

ii. 方法

b) 类和对象的区别和联系

i. 类是抽象,概念的,代表一类事物;

ii. 对象是具体的,实际的,代表一个具体事物;

iii. 类是对象的模板,对象是类的一个个体、实例。

c) 如何定义类

i. Package包名

ii. class类名

iii. extends父类

iv. interface接口名

d) 如何创建对象

2、 成员变更和成员方法

3、 构造方法

6讲(005315

1、 如何创建对象

2、 对象存储

3、 成员方法:

a) 每调用一个方法,会新开一个栈用于新方法使用空间。

7(00:44:53)

1、 类成员方法的声明:没有函数体

2、 类成员方法的定义:

3、 9*9法则;二维数组转置。

4、 构造方法

a) 方法名和类名相同

b) 没有返回值

c) 构造方法作用是完成新对象的初始化

d) 创建一个类的新对象时,系统会自动的调用该类的构造方法

e) 每一个类都有一个默认构造方法

f) 一个类可以有多个构造方法

8讲(00:35:07

1、 This变量:对象的成员变更,区别于成员的参数。

2、 类变量/类方法

a) 类的变量:static int total=0;

b) 所有对象共享的变量,任何一个该类的对象去访问它时,取到的都是相同的值。

3、 面向对象-四大特征:抽象、封装、继承、多态

9(01:09:08)

1、 静态区域块:static { i++;} 静态区域块,只执行一次。不管是否创建对象。

2、 类方法:public static int getTotalFee(){ return totalFee;} 调用方法为:类.类方法或者对象名.类方法。但是类.类方法 效果更高,资源更少。

3、 JAVA规则:

a) 类变量原则上用类方法去访问;

b) 类方法不能访问非静态变量(非类变量)。

4、 面向对象编程四大特征

a) 抽象

i. 事物->类的抽象

b) 封装

i. 抽象出的数据和对数据的操作封装在一起,数据被保护在内部。

ii. 访问控制修饰符

1. 公开级别:public

2. 受保护级别:protected,对子类和同一个包中的类公开;

3. 默认级别:同一个包的类公开;

4. 私有级别:private,只有类的本身可以访问。

iii. 包的必要性

1. 区分相同类

2. 管理类

3. 控制访问范围

4. 打包命令:package com.xiaoming;

5. 常用的包:

a) Java.lang.*

b) Java.util.*

c) Java.net.*

d) Java.awt.*

c) 继承

d) 多态

10讲(01:08:10

1、 继承

a) 解决代码复用

b) Class 子类 extends 父类

c) 继承包括:

i. Public à子类继承为public

ii. Protectedà子类继承为protected

iii. Private à子类不可继承

d) 子类只能继承一个父类

e) Java所有类都是Object类的子类

2、 方法重载(over load

a) 只是返回类型不一样/修饰符不一样,不能构成重载;

b) 方法的参数类型,个数,顺序至少有一项不同

3、 方法覆盖

a) 子类方法不能缩小父类的访问权限。

11(00:49:20)

1、 多态

12讲(00:37:46

1、 多态

a) 一种引用管理多个对象

b) Animal an; an = new Cat(); an=new Dog()

2、 java允许父类的引用变量引用它的子类的实例(对象)。如:Animal an; an = new Cat()

3、 myeclipseeclipse的区别:

a) 只有eclipse不能开发:struts+hibernate+spring+jsp+aiax

b) Eclipse+插件=myeclipse:可以开发上面内容。

c) Eclipseme:可以开发手机应用。

13讲(00:44:41

1、 抽象类

a) 当父类的一些方法不能确定时,可以用abstract表示抽象,但前提此类也要定义为抽象类。同时抽象方法不能在父类中实现。Abstract class Animal{}

b) Abstract public void cry();

c) 当一个类继承的父类是抽象类,需要把抽象类所有抽象方法全部实现。

d) 抽象类不能被实例化。

e) 抽象类不一定要包括抽象方法。

2、 接口

a) 接口就是给出一些没内容的方法,封装到一起,到某个类要使用的时候,在根据具体情况把这些方法写出来。

b) Class 类名 implements 接口1,[接口2]….{}

c) Interface Usb{}

d) 当一个类实现了一个接口,要该类把这个接口的所有方法全部实现。

e) 使用接口,体现多态。

i. Public void useUsb(Usb usb){}

ii. Computer com=new Computer(); com.userUsb(phone);

f) 接口原则:

i. 接口不能被实例化;

ii. 接口中所有的方法不能有主体,但抽象类可有实现的方法(接口是更加抽象的抽象类);

iii. 一个类可以实现多个接口;

iv. 接口中可以有变量,但变量不能用privateprotected修饰;

1. 接口中的变量,本质上都是static的,而具是final,不管你加不加static修饰;

2. java开发中,我们经常把常用的变更,定义在接口中,作为全局变量使用

v. 一个接口不能继承其他类,但能继承接口

g)接口体现了程序设计的多态和高内聚低偶合的设计思想。

3、 final

14讲(01:13:30

1、 实现接口与继承

a) 继承是继承父类的方法,但需要其他方法,就可以通过接口来实现;

b) Java继承是单继承,区别于C++中的多继承;

c) 实现接口可以看作是对继承的一种补充;

d) 实现接口可在不打破继承关系的前提下,对某个类功能扩展,非常灵活

2、 接口实现多态

a) 前期绑定:编译的时候,就确定类型

b) 后期绑定:在运行的时候,才能确定类型

3、 final

a) 可以修饰变更或者方法;

b) 当不希望父类的某个方法被子类覆盖时,可以用fianl关键字修饰;

c) 当不希望父类的某个变量被子类修改时,也可以fianl关键字修饰,同时一个变量是fianl,则必须赋值;

d) 当不希望类被继承时,可以用final修饰

e) Final修饰变量也叫常量

4、 数组

15讲(01:08:00

16讲(00:56:44

1、 维数组

a) 数组可以存放多个同一类型的数据

b) Float arr[]=new float[6];float arr[]={1,23.3f,56};对象数组在定义后,赋值时需要再次为每个对象分配空间[即:new 对象]

c) 数组大小必须事先指定

d) 数组名可以理解为指向数组首地址的引用

e) 数据组大小:arr.length

f) 对象数组

i. Dogs dogs[]=new Dog[4];

ii. dogs[0]=new Dog();

iii. dogs[0].setName(“小黄”);

2、 排序、查找

3、 多维数组

17(01:06:41)

1、 排序

a) 查找最大值:maxWeight=dogs[i].getWeight();

b) 对象判断是否相等使用:equals(),而不使用“==

c) 排序分类:

i. 内部排序:数据都加载到内存。如:交换式排序法、选择式排序法和插入排序法

ii. 外部排序:无法全部加载到内存中。如:合并排序法和直接合并排序法

d) 交换式排序法:---运用数据值比较后,依判断规则对数据位置进行交换,以达到排序的目的。

i. 冒泡排序法:

ii. 选择式排序法:

iii. 快速排序法:

e) 打印当前时间

i. Calendar cal=Calendar.getInstance();

ii. Cal.getTime();

f) 随机产机一个0-1的数据

i. Int t=(int) (Math.random()*10000);

18(00:58:34)

1、 插入式排序法:

a) N个待排序的元素看成为有序表和一个无序表

b) 插入排序对选择排序效率更快。

2、 交换式排序法-快速排序法

a) 对冒泡排序的改正

3、 其他排序法-选堆排序法、希尔排序法、二叉权排序法

4、 查找

a) 顺序查找

b) 二分查找

5、代码存放,main主栈遇到新方法,会相应开辟新栈以提供新方法使用。

19讲(00:18:25

1、 多维数组-二维数组

a) Int a[][]=new int [2][3]

20讲(00:43:27

1、 二进制

a) 原码、反码、补码

i. 二进制的最高位是符号位,0为正,1为负;

ii. 正数的原码,反码,补码都一样;

iii. 负数的反码=它的原码符号位不变,其它位取反(0->1,1->0);

iv. 负数的补码=它的反码+1

v. 0的反码,补码都是0

vi. Java没有无符号数,换言之,java中的数都是有符号的(区别于c++unsiged

vii.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22630256/viewspace-1033845/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/22630256/viewspace-1033845/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值