| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 578 人关注过本帖
标题:在JAVA私塾学习时整理的一套学习笔记---第三章
只看楼主 加入收藏
小助新编
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2011-10-8
结帖率:0
收藏
已结贴  问题点数:0 回复次数:1 
在JAVA私塾学习时整理的一套学习笔记---第三章
第三章Java类和对象
一.    面向对象初步
二.    面向对象三大特征:
1.    封装:把对象的全部属性和全部服务结合在一起,形成一个不可分割的独立单位;尽可能隐藏对象的内部结构。

    同一个类中    同一个包中    不同包中的子类对象    任何场合
Private    Yes            
Default    Yes    Yes        
Protected    Yes    Yes    Yes   
Public    Yes    Yes    Yes    Yes

2.    继承:如果一个对象A继承自另一个对象B,就把这个A成为B的子类对象,而B成为A的父类对象。继承可是子对象具有父对象的各种属性和方法,而不需要再次编写相同的代码。同时,可以重新定义某些属性,并重写某些方法,即覆盖父对象的原有属性和方法,使其获得与父对象不同的功能。
3.    多态:同一种行为的多种不同表达,或者同一种行为的多种不同实现就叫做多态。
三.    JAVA类的基本构成
包:包是类接口或其他类的集合,包主要用来将类组织起来成为组,从而对类进行管理
(1)    允许将包含类代码的文件组织起来,易于查找和使用适当的类
(2)    包不止是包含类和接口,还能包含其他包。形成层次的包空间。
(3)    有助于避免命名冲突。
JDK中常用的包:java.lang---包含一些java语言的核心类,包含java语言设计基础的类。Object类是所有类的基类。
 java.awt---包含构成抽象窗口工具集(abstract window toolkits)的多个类,这些类被用来构建和管理应用程序的图形用户界面(GUI)。
java.swing---定义java版的图形用户界面(GUI)解决方案,提供了很多完备的组建,可以对复杂的桌面系统构建。
包含执行于与网络相关的操作的类。
提供多种输入输出功能的类。
java.util---包含一些实用工具类,如定义系统特性,使用与日期日历相关的方法。还有重要的集合框架。
每个源文件只有一个包的声明,而且包名应该全部小写。
编译和生成包
带包编译: javac –d destpath Test.java
           javac –d c:\test\ Test.java
带包运行:java p1.Test
java类搜索方式:import语句引入p1包内的Test类,假定环境变量CLASSPATH的值为,“.;  c:jdk\lib; d:\ex”,java运行环境将依次到下述可能的位置寻找并载入该字节码文件 Test.java
.\p1\Test.java
C:jdk6\lib\p1\Test.java
D:\ex\p1\Test.class

构造方法:创建对象并初始化成员变量。创建对象时会自动调用类的构造方法。
定义规则:必须与该类具有相同的名字,并且没有方法的返回类型(包括没有void)。一般构造方法都用public类型来说明,这样才能在程序的任意位置创建类的实例对象。
说明:每个类至少有一个构造方法。如果不写构造方法,java编程语言将提供一个默认的,该构造方法没有参数,而且方法体为空。如果一个类中已经定义了构造方法,则系统不再提供默认的构造方法。
析构方法:析构方法finalize的功能是:当对象被从内存删除时,该成员方法将会被自动调用。

带参数的方法被调用:先分配形参空间,然后将实参复制给形参。

参数可变的方法(JDK5.0开始):
public class Test{
    public static int sum(int……n){
    int total = 0;
    for(int i=0; i<n.length; i++){
     total += n[i];
}
Return total;
}
Public static void main(String [] args){
System.out.println(Test.sun(10,100,1000));
}
}

四.    如何使用一个java类
this关键字:
(1)    点去成员;
(2)    区分同名变量;
“this.变量”调用的是当前属性的变量值,直接使用变量名称调用的是相对距离最近的变量值。
(3)    作为方法名来初始化对象;
相当于调用本类的其他构造方法,他必须作为构造方法的第一句。
五.    引用类型
 public class TempTest {
         private void test1(A a){
    a.age = 20;
    System.out.println("test1方法中的age="+a.age);
}
 public static void main(String[] args) {
 TempTest t = new TempTest();
     A a = new A();
    a.age = 10;
    t.test1(a);
    System.out.println("main方法中的age="+a.age);
}
}
 class A{
public int age = 0;
 }
运行结果:
test1方法中的age=20
main方法中的age=20








六.    变量
在方法外定义的变量被自动初始化,局部变量必须在使用前“手工”初始化。
七.    包装类
基本数据类型    对应的包装类
boolean    Boolean
byte    Byte
short    Short
int    Integer
long    Long
char    Character
float    Float
double    Double

            Integer t = new Integer(i);          包装,装箱
            Int j = t.intValue();    //j=500      拆箱
八.    类型转换
强制类型转换:
强制类型转换只能用在原本就是某个类型,但是被表示成了另外一种类型的时候,可以把它强制转换回来。强制转换类型并不能在任意的类型间惊醒转换。

变量可自动被升级为一个较长的形式。
byte—--short--—char--—int--—long--—float----double

自动包装和解包
自动包装:把基础数据类型自动封装并转换成对应的包装类的对象。
自动解包:把包装类的对象自动解包并转换成对应的基础数据类型。
Integer a1=5;   //自动包装
Int a2 = new Integer(5);    //自动解包

强制类型转换:在一个类型前面加(),来强制转换
        long l = 9L;
        int i = (int)l;
自动类型转换:
          int i = 5;
        String str = ""+i;
向上造型:把范围小的造型为范围大的类型,
        int i = 2;
        long l = i;

九.    什么是实例变量?什么是局部变量?什么是类变量?什么是final变量?
实例变量:类中定义的变量,即类成员变量,如果没有初始化,会有默认值;
局部变量:在方法中定义的变量,必须初始化;
类变量:用static可修饰的属性;
final变量: final属性只允许赋值一次,且只能通过构造方法赋值;定义后也就是一    个常量。

定义规则和使用规则
实例变量:它不需要static关键字来声明,只要对象被当作引用,实例变量就将存在;
局部变量:在方法内任意定义变量即为局部变量;
类变量:必须用static修饰;
final变量:不可以再修改的。

第三章Java类和对象.pdf (116.19 KB)
搜索更多相关主题的帖子: 学习 Java 笔记 
2011-10-13 10:01
husiwen
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:227
专家分:1125
注 册:2010-5-23
收藏
得分:10 
看看
2011-10-13 20:03
快速回复:在JAVA私塾学习时整理的一套学习笔记---第三章
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022694 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved