Java面向对象(一)
来源:互联网 发布:淘宝网手机网页版 编辑:程序博客网 时间:2024/05/22 13:05
面向对象
对象 :客观存在的物体 是结构化数据.也就是:对象就是数据 对象由属性组成
类: 类是对象的结构定义,是对象的结构模板.利用类来创建对象.根据对象的特征设计(抽象出)类.
引用:引用是指向对象的代词,引用变量通过对象地址间接引用了内存堆中的对象.
属性:是对象的特征,在类上定义(声明),是属于对象个体的变量
方法:是对象的行为,是对象动作, 是算法,是利用对象数据计算来完成,是计算过程:如: 方格的下落:行增加
this: 这个,在方法运行期间代表当前这个对象本身,this本质上是一个局部变量,是方法的隐含参数,在方调用时候隐含接收了方法调用者的引用。
this是在方法调用和运行期间,动态绑定到调用方法的这个对象!在编译期间不能确定是哪一个对象!
构造器(构造方法)
1)业务:上是描述对象的创建过程的.
2)本质上是分配对象的堆空间并初始化对象属性
构造器的语法:
1) 构造器的名字与类名一致(包括大小写)
2) 不能声明返回值(包括不能使用void)
3) 可以有参数,参数是创建对象依赖的前提条件.
4) 如果类没有声明构造器, Java会提供默认构造器.
构造方法与方法区别
构造方法: 1)构造方法由于"创建"并且初始化对象!
2) 名字必须与类名一致,不能声明返回值!
3) 使用new运算调用构造器.
方法: 1)对象的"功能"封装了功能的计算方法.
2) 一般不与类名一样,一定声明返回值
3) 方法使用对象的引用调用.
注意:在同一个包(package)中不能有同名的类!
package day01;
Demo01.java
Demo01.class
Cell.class
Demo02.java
Demo02.class
Cell.class //编译错误!
public class Demo02 {public static void main(String[] args) {Cell1 c1 = new Cell1(2,4);//调用构造器c1.drop();//调用方法System.out.println(c1.row+","+c1.col); }}class Cell1{int row; int col; /** 构造器 */public Cell1(int row, int col){this.row = row;this.col = col;}public void drop(){ this.row++; }}//class Cell{}//编译错误, 在package day02中有同名的类了.
Java中的println()方法是重载的方法 ,例Demo05.java
public class Demo05 {public static void main(String[] args) {char[] chs = {65,66,67};int[] ary = {65,66,67};//如下println()是3个不同的重载方法System.out.println(chs);//按照字符串输出:ABC//按照Object 的 toString()结果输出System.out.println(ary);System.out.println();//输出 回车字符}}
面向对象3大特征: 封装继承 多态。
狗是多态的,圆形是多态得到,美女是多态的。
多态:多种多样
1) 个体(对象)是多种多样的
Java 利用继承实现:父类型变量引用的子类型对象
(实例)是多种多样的.
飞行物体有两种
2) 行为是多种多样的:重载和重写
重写:子类型修改了父类型的方法(行为),是调用
方法的结果表现为多样性.分别调用子类型的具体方法
检查飞行物体被击中,有两种不同的方法.
重载:方法参数变量不同, Java会调用不同的方法
美资软件公司JAVA工程师电话面试题目 1. Talk about overriding, overloading.
/** "重写" Object的toString方法 */
class Cell{ …… public String toString(){ returnrow+","+col; }} ……Cell cell = new Cell(5, 5); // 先执行 cell.toString()然后将返回结果输出 System.out.println(cell);//调用toString()输出
父类型可以引用子类型的实例
属性是具体绑定到类型
This() -------- 调用本类中其他构造器
- Java面向对象(一)
- java面向对象(一)
- Java面向对象(一)
- java 面向对象一
- java 面向对象 一
- JAVA 面向对象 一
- Java面向对象(一)
- java面向对象(一) 了解面向对象
- JAVA面向对象总结(一)
- java—面向对象、一
- java面向对象程序设计(一)
- 一.Java面向对象理论基础
- Java面向对象总结(一)
- java面向对象(一)
- Java 面向对象(一)
- Java面向对象编程(一)
- java面向对象(一)
- Java面向对象(一)
- mac 下 node-qrcode的二维码库
- sshuttle全局代理的实现简析
- Android开发adb环境配置
- ORACLE堆表和索引组织表IOT优缺点
- 取得下个参数宏定义
- Java面向对象(一)
- 微信打飞机之IOS/安卓无敌破解版
- Android开发之xml文件的序列化
- 非线性数据结构——二叉树
- canvas的translate、scale、rotate等方法
- 自旋锁的应用
- cookie学习笔记2
- 电脑族最容易得什么疾病?
- 【第二章】证券交易程序