JAVA面向对象学习

1.面向对象思想的核心概念:对象、类、消息、接口

     对象就是客观世界中客观存在的任何事物。可以是有形的实体、也可以是无形的、抽象的规则、计划或事件。

     类是对一组具有相同静态特性和相同动态行为的对象的抽象(在人们认识自然、认识社会的过程中,主要使用两种方法:1.特殊到一般的归纳法-----------“归类”  归类的目的是为了更好的认识同类事物共同的特性和行为   2.一般到特殊的演绎法------------------“分类”,分类的目的是为了进一步区分不同事物的特性和行为)。

     接口就是类之间的一个公共的交流部件。如:人和电脑可以通过键盘和鼠标进行交流,键盘和鼠标就是人和电脑交流的两个“接口”。

     消息就是对象之间进行通信的一种规格说明,是对象之间进行交互和通信的工具(独立存在的对象是没有意义的,对象之间必须发生联系)。如:电脑如果只是单纯的摆放在房间里,而没有和其他的对象交互那么它就是一堆废铁,只有当有其他的对象(人)与他交互的时候才会有用的。

2.类的定义

    清楚类所在的包、成员变量、成员方法、构造函数、实例变量、类变量、实例方法、类方法、主方法的概念以及一些常用的关键字public、abstract、final、class、extends、implements等。

    存取修饰符:private、friendly(默认的)、protected、public。

3.对象

   对象的特性:对象的唯一性、对象生命周期、对象间交互、对象的状态(一般对象都有多种状态,用UML状态图描述,而对象的交互通常会引发对象从一个状态切换到另一种状态)。

   创建对象:创建对象的引用变量、创建类的实例对象、将对象的引用赋值给对象引用变量。

    this变量和super变量,分别代表当前的实例对象和当前类的父类。

    方法重载和方法重写,发生的域不一样:前者发生在同一个域内,后者是父类和子类时才可能才会发生。

4.接口(接口可以看作一种数据类型,不能实例化,但是可以用于定义接口类型的变量)

     接口被描述为一组方法声明和常量(默认为final、public)的集合。

     接口引用:接口类型变量只能调用接口声明的成员变量和成员方法,不能引用实现接口的类中的成员变量和成员方法

5.包和java类库

     定义包:package packagename;

     引入包:import 包名.类名;

     java常用类库简介:

    

(一)java.lang包 
  Java最常用的包都属于该包,程序不需要注入此包,就可以使用该包中的类,利用这些类可以设计最基本的Java程序。
  String类,提供了字符串连接、比较、字符定位、字符串打印等处理方法。
  StringBuffer类,提供字符串进一步的处理方法,包括子字符串处理、字符添加插入、字符替换等。
  System类,提供对标准输入、输出设备io的读写方法,包括键盘、屏幕的in/out控制。常用的System.out.print()、System.out.println()都是该类的静态变量输出流out所提供的方法。
  Thread类,提供Java多线程处理方法,包括线程的悬挂、睡眠、终止和运行等。
  Math类,提供大量的数学计算方法。
  Object类,这是Java类的祖先类,该类为所有Java类提供了调用Java垃圾回收对象方法以及基于对象线程安全的等待、唤醒方法等。
  Throwable类,该类是Java错误、异常类的祖先类,为Java处理错误、异常提供了方法。

(二)java.awt包
  该包中的类提供了图形界面的创建方法,包括按钮、文本框、列表框、容器、字体、颜色和图形等元素的建立和设置。

(三)javax.swing包
  该包提供100%Java编写的图形界面创建类,利用该包的类建立的界面元素可调整为各种操作系统的界面风格,支持各种操作平台的界面的开发。此外,swing包还提供了树形控件、标签页控件、表格控件的类。Java.swing包中的很多类都是从java.awt包的类继承而来,Java保留使用java.awt包是为了保持技术的兼容性,但应尽量地使用javax.swing包来开发程序界面。

(四)java.io包
  该包的类提供数据流方式的系统输入输出控制、文件和对象的读写串行化处理,比较常用的类包括:BufferInputStream、BufferOutputStream、BufferedReader、BufferedWriter、DataInputStream、DataOutputStream、File、FileReader、FileWriter、FileInputStream和FileOutputStream等。

(五)java.util包
  该包提供时间日期、随机数以及列表、集合、哈希表和堆栈等创建复杂数据结构的类,比较常见的类有:Date、Timer、Random和LinkedList等。

(六)java.net包
  该包提供网络开发的支持,包括封装了Socket套接字功能的服务器Serversocket类、客户端Socket类以及访问互联网上的各种资源的URL类。

(七)java.applet包
  此包只有一个Applet类,用于开发或嵌入到网页上的Applet小应用程序,使网页具有更强的交互能力以及多媒体、网络功能。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值