Java学习笔记之面向对象
面向对象概念
面向对象编程 &面向过程编程
面向对象:关心是谁来做
面向过程:关心的是怎么做
面向对象总结成一句话:就是分工与协作,干活的是对象
生活中: 对象 -----抽象-------->类
Java: 类 --------孵化------->对象
类中有属性:
1,属性为静态特征
2,属性有访问修饰符 ,临时变量不能有访问修饰符。
3,属性写在类中,不能写在方法中。
4,变量必须要初始化才能使用,那么属性不赋值会有默认值: 整数 小数0.0 char:空字符 boolean:false 引用数据类型:null
5,属性的赋值是默认值,如果你手动设置了就会覆盖这个值
类中有方法:动态的行为能力(成员方法 、 构造方法)
构造方法:也是一种行为能力,是特殊的行为能力,孵化对象的能力。构造方法可以有N个
特点:
1,方法名(必须跟类名一样) ,构造方法没有返回值类型。首字母大写。
2,当我们没有定义构造方法的时候,系统默认给我们定义无参的构造方法。
3,如果有定义构造方法,系统就不会给你默认一个无参的构造方法。
4,当有多个构造方法的时候,他们的参数列表一定不一样
访问修饰符 方法名([参数列表]){
方法体;
}
public Phone(String s){
System.out.println("有参构造方法 。。。。。 ");
}
public Phone(){
System.out.println("无参构造方法 。。。。。 ");
}
类和对象实例
1,定义类
2,由类孵化(构造)对象
3,使用这个对象: 数据类型 变量名 = new 构造函数(); new 在堆内存中申请分配的空间
Phone p1 = new Phone("asdfasdfas");
4,使用(设置 \获取)属性:对象名.属性名
p1.type = "小米6";
p1.color = "red";
p1.price = 3000 ;
5,使用方法:对象名.方法名
p1.call("13125166028");
p1.playGame();
关于包
包:package
1,以域名的倒叙。不能使用java等一些关键字开头,否则编译不过。,
2,所有的类都给一个包,没有包的类不能被别的类引用。
3,包名不要用中文、中文
4,包+类名 不重复
5,当我们想用其它包中的类,需要import
com.hp.seven4.Demo06
com.baidu.map.XXXX
Java学习笔记之面向对象的更多相关文章
- Java学习笔记之---面向对象
Java学习笔记之---面向对象 (一)封装 (1)封装的优点 良好的封装能够减少耦合. 类内部的结构可以自由修改. 可以对成员变量进行更精确的控制. 隐藏信息,实现细节. (2)实现封装的步骤 1. ...
- Java学习笔记之面向对象、static关键字
一周Java学习总结 今天就总结理清一下关于面向对象和面向过程的程序设计的一些不同特点,以及讲下static关键字. 面向对象 现在接触的Java是面向对象的,现在的程序开发几乎都是以面向对象为基础的 ...
- Java 学习笔记(4)——面向对象
现在一般的语言都支持面向对象,而java更是将其做到很过分的地步,java是强制使用面向对象的写法,简单的写一个Hello Word都必须使用面向对象,这也是当初我很反感它的一点,当然现在也是很不喜欢 ...
- 【原】Java学习笔记019 - 面向对象
package cn.temptation; public class Sample01 { public static void main(String[] args) { // 仔细想一想,Ani ...
- Java学习笔记--关于面向对象的思考
1.不可改变的类生成对象以及变量的范围 2. 关键词this的使用 3.用类抽象的思想制作软件 4.通过关系模型建立类 5.使用面向对象的范例来设计程序,遵循类设计指导. 已经学习了:怎么定义类已经创 ...
- 疯狂java学习笔记之面向对象(一) - 定义类、方法、构造器
Java面向对象 1.定义类 2.创建对象.调用方法 类和对象: 某一类对象的概念定义. 比如:人类 - 抽象出来的概念(不特指某个人) 对象 - 在类的概念下产生的一个实例,它就是一个对象了. ja ...
- java 学习笔记2 面向对象(上)
类和对象 类是某一批对象的抽象,可以把类理解成某种概念.对象是一个具体存在的实体.类和对象是面向对象的核心. 类定义的是多个实例的特征,类不是具体存在,实例才是具体存在. 定义类(class)的语法: ...
- 【原】Java学习笔记016 - 面向对象
package cn.temptation; public class Sample01 { public static void main(String[] args) { // this 关键字 ...
- 【原】Java学习笔记014 - 面向对象
package cn.temptation; public class Sample01 { public static void main(String[] args) { // 面向对象思想 // ...
随机推荐
- helm在kubernetes环境中搭建
1.安装helm 1.1.安装helm客户端 各个版本的helm:https://github.com/helm/helm/releases wget https://get.helm.sh/helm ...
- 用101000张食物图片实现图像识别(数据的获取与处理)-python-tensorflow框架
前段时间,日剧<轮到你了>大火,作为程序员的我,看到了另外一个程序员—二阶堂,他的生活作息,以及饮食规律,让我感同身受,最让我感触的是他做的AI聊天机器人,AI菜品分析机器人,AI罪犯分析 ...
- PLC与上位机的socket通讯——ABB机器人程序(三)
源程序:https://github.com/935094505/ABB-socket-communication 程序范例 觉得有帮助,别忘了打赏下
- Jmeter接口压力测试,Java.net.BindException: Address already in use: connect
Java.net.BindException: Address already in use: connect 问题原因: 操作系统会为TCP/IP服务预留临时端口,Jmeter在跑并发测试的时候每开 ...
- PTA A1015
A1015 Reversible Primes (20 分) 题目内容 A reversible prime in any number system is a prime whose "r ...
- 译 .NET Core 3.0 发布
原文:<Announcing .NET Core 3.0> 宣布.NET Core 3.0 发布 很高兴宣布.NET Core 3.0的发布.它包括许多改进,包括添加Windows窗体和W ...
- Ubuntu python-matplotlib安装couldn't connect to display ":0.0"
先卸载旧的matplotlib库(sudo pip3 uninstall matplotlib),再利用命令 sudo apt-get install python-matplotlib安装,自动安装 ...
- WebStorm2017.3.4版本 注册码
http://idea.singee77.com http://im.js.cn:8888
- 【数据结构与算法】--JavaScript 链表
一.介绍 JavaScript 原生提供了数组类型,但是却没有链表,虽然平常的业务开发中,数组是可以满足基本需求,但是链表在大数据集操作等特定的场景下明显具有优势,那为何 JavaScript 不提供 ...
- 要不要学习Git(分布式版本控制系统)
做技术的人,要不要学一学Git呢? 提出这个问题,是因为很多小伙伴还不会使用Git. 对于任何新一代的技术工具,它在业界普及都有一个过程,Git的阻碍是:学习成本.工具迭代的成本. SVN诞生于200 ...