java中一个重要思想:面向对象
面向对象:
1, 面向过程的思想(合适的方法出现在合适的类里面)
准备去一个地方:
先买车, 挂牌, 开导航, 踩油门, 过黄河, 穿越珠穆朗玛峰...
2, 面向对象的思想
我开着车去, 车怎么去随便所有去这个地方的信息, 全部封装在这个车里面, 我不了解这个车是怎么运行的, 我也不需要了解,
我只知道我能到达这个地方就行了面向对象的基本思想是, 从现实世界中客观存在的事物出发, 来构造软件系统, 并在系统的构造中尽可能的运用人类的自然思维方式,
面向对象是目前人与计算机沟通最简单的语言思想
3, 什么是类, 什么是对象?
对象是类的一种实例化, 对象用"属性"和"方法"来对应描述事物所具有的"静态属性"和"动态属性"
类是用于描述同一类形的对象的一个抽象的概念, 类中定义了这一类对象应该具有的"静态属性"和"动态属性"
类可以看成是一类对象的模板, 对象可以看成该类的一个具体实例
举个例子(什么是瓶子-->一类事物的抽象-->静态属性,动态属性)
举个例子(人-->学生-->张三)
什么是类
学生是类, 瓶子是类, 老师是类
什么是对象
这个学生是对象, 这个瓶子是对象, 这个老师是对象, 符合这类事物的特征的某一个东西, 叫对象
领导-->显示职工的姓名
职工:
静态属性:
姓名: 张三
年龄: 24
工资: 3000
动态属性:
显示姓名
显示年龄
修改姓名
领取工资
4, 类与类之间的关系
关联关系(最弱的一种关系):
不好下一个定义, (A类中某个方法的参数是B类的某一个对象)
举个例子(学生<--学校-->老师)
老师要讲课, 这是一个方法, 要传个参数进去, 参数是学生对象
继承关系(避免多重继承)
什么是一种什么
举个例子(运动员-->球类运动员-->篮球运动员)
聚合关系(聚集, 组合)
什么是什么的一部分
举个例子(球队-->(王队长, 队员))
组合----人: 头, 身体
聚集:构成这个类的这部分可以是这个类的, 也可以是另外一个类的,
组合:每一部分只属于一个类
实现关系
接口:只管定义方法, 怎么实现由子类去做
举个例子(接口(开车的方法), A类可以实现, B类也可以实现)
5, java类的定义, 对象和引用
java: 万物皆对象, 处处皆需求
对象是对属性(成员变量, 静态属性)和方法(函数, 动态属性)的封装
java中提供的类, 程序员自己定义的类
面向对象更容易达到一种境界:
Reusable(重用性), Extensibility(可扩展性)
面向组件(Component)--比对象更高层次的抽象
WebService
6.成员变量和局部变量的区别
成员变量的初始化
成员变量可以是java中任意一种数据类型(基础数据类型和引用类型)
成员变量可以初始化, 也可以不初始化(java默认初始化)
成员变量的作用范围-->整个类
引用类型, 见1-6
类和对象的关系
C c1 = new C();
C c2 = new C();// c1, c2在这里是局部变量
package com.maya.test;
public class Person {
//成员变量
public int 身份证号;
public String 姓名;
//成员方法
public void test() {
int i=0;
//局部变量
System.out.println("执行test方法 !");
}
public void test1() {
int n = 身份证号;
}
}
package com.maya.test;
public class Main {
public static void main(String[] args) {--------------引用Person方法
/*
* 当使用new这个关键字的时候,
* 栈:方格-->p--地址指向Person对象
* 堆:方格--Person对象
*/
//new--->实例化
Person p123 = new Person();
//初始化
System.out.println(p123.姓名);
System.out.println(p123.身份证号);
p123.test();
}
}
java中一个重要思想:面向对象的更多相关文章
- 第四节:详细讲解Java中的类和面向对象思想
前言 大家好,给大家带来详细讲解Java中的类和面向对象思想的概述,希望你们喜欢 类和面向对象 在Java中怎样理解对象,创建对象和引用:什么是引用,对于基础学习的同学,要深入了解引用.示例:Stri ...
- Spark小课堂Week7 从Spark中一个例子看面向对象设计
Spark小课堂Week7 从Spark中一个例子看面向对象设计 今天我们讨论了个问题,来设计一个Spark中的常用功能. 功能描述:数据源是一切处理的源头,这次要实现下加载数据源的方法load() ...
- java中一个字符串是另外一个字符串的字串
java中一个字符串是另外一个字符串的字串 String类中有一个方法 public boolean contains(Sting s)就是用来判断当前字符串是否含有参数指定的字符串例s1=“take ...
- java中一个引人深思的匿名内部类
前两天去面试javaweb问到一个问题,在你的项目中有没有用到线程,我特么的一想,这东西不是在c层面的吗,所以说我不了解线程..... 后来回去想啊想啊,我操这特么的不是再问我事物的控制,消息队列的回 ...
- Java中一个线程只有六个状态。至于阻塞、可运行、挂起状态都是人们为了便于理解,自己加上去的。
java中,线程的状态使用一个枚举类型来描述的.这个枚举一共有6个值: NEW(新建).RUNNABLE(运行).BLOCKED(锁池).TIMED_WAITING(定时等待).WAITING(等待) ...
- 为什么Java中一个char能存下一个汉字
在Java中,char的长度是2字节,即16位,2的16次方是65536. 1.如果采用utf-8编码,一个汉字占3个字节,char为什么还能存下一个汉字呢? 参考:https://developer ...
- java中一个数组不能放不同数据类型的值
在java中,数组不能放不同数据类型的值. 方法一: 多态 定义数组类型的时候定义为父类,而存进数组为父类的子类 public class test2 { public static void mai ...
- java中一个查询业务的流程
因为有用到分页,首先建一个page类 1 public class Page<T> { 2 private int pageSize; //每页显示条数 3 private int cur ...
- java 中一个char包含几个字节
背景 char包含几个字节可能记得在上学的时候书上写的是2个字节,一直没有深究,今天我们来探究一下到底一个char多少个字节? Char char在设计之初的时候被用来存储字符,可是世界上有那 ...
随机推荐
- Java Applet实现五子棋游戏
从谷歌的AlphaGo到腾讯的绝艺,从人脸识别到无人驾驶,从谷歌眼镜到VR的兴起,人工智能领域在不断的向前迈进,也在不断深入的探索.但背后错综复杂的技术和利益成本也是很多企业亟待解决的难题.对于人工智 ...
- CF615D Multipliers [数学]
tags:[计数原理][乘法逆元][归纳の思想]题解(复杂度:O(mlogm)):棘手之处:n的约数多到爆炸.因此我们不妨从因子的角度来分析问题.对n分解质因数得:n = p1^a1 * p2^a2 ...
- CSS3学习笔记(2)-CSS盒子模型
p{ font-size: 15px; text-indent: 2em; } .alexrootdiv>div{ background: #eeeeee; border: 1px solid ...
- 微信小程序支付简单小结与梳理
前言 公司最近在做微信小程序,被分配到做支付这一块,现在对这一块做一个简单的总结和梳理. 支付,对于购物来说,可以说是占据了十分重要的一块,毕竟能收到钱才是重点. 当然在开发之前,我们需要有下面这些东 ...
- 手机自动化测试:Appium代码之Logger
手机自动化测试:Appium代码之Logger poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.poptest推出手机自动化测 ...
- (iOS)私有API的使用(原创)
最近在做企业级程序,需要搞设备的udid等信息,但是ios7把udid私有化了,不公开使用.所以研究了一下ios的私有api. 调查了一下文章,发现这方面的文章不多,国内更是不全,高手们都懒得写基础教 ...
- mysql 分析2 show processlist ;
show processlist ; 可以查看当前有哪些链接 处于什么状态 分析语句 那些连接处于什么状态 (需要通过脚本观察一段时间内的有运行情况做出统计一直刷新服务器运行状态 ) 当出现下面的几种 ...
- [笔记]RankSVM 和 IR SVM
之前的博客:http://www.cnblogs.com/bentuwuying/p/6681943.html中简单介绍了Learning to Rank的基本原理,也讲到了Learning to R ...
- 解决IE6下 PNG图片有背景问题
IE6下有时候png格式的图片会存在背景的问题,以下是我常用的解决办法: <!--[if IE 6]> <script src="js/DD_belatedPNG_0.0. ...
- 为JQuery EasyUI 表单组件增加“焦点切换”功能
1.背景说明 在使用 JQuery EasyUI 各表单组件时,实际客户端页面元素是由 JQuery EasyUI 生成的,元素的焦点切换,虽然 Tab 键可以正常用,但顺序控制属性 tabinde ...