四 黑马程序员-java面向对象(上)
一.:面向对象
(1)面向对象:是基于面向过程的一种思想。
面向过程:以函数为基础,关注实现过程。
面向对象:以对象为基础,关注实现结果。
(2)面向对象的思想特点:
A:是一种更符合人们思考习惯的思想。
B:把复杂的事情简单化了。
(3)事物是如何体现的呢?
A:属性 有哪些特征
B:行为 有哪些功能
(4)类与对象的关系:
类:是相关的属性和行为的集合。是一个抽象的概念。
对象:是某种事物的具体存在,具体的表现形式。
成员变量和局部变量的区别
(1)定义位置区别:
成员变量:定义在类中,方法外。
局部变量:定义在方法中,或者方法声明上。
(2)初始化值的区别:
成员变量:都有默认初始化值。整数0,浮点数0.0,布尔false,字符\u0000(""--空字符串),引用数据类型null
局部变量:没有默认值。要想使用,必须先赋值。
(3)存储位置区别:
(4)生命周期区别:
成员变量:随着对象的创建而存在。随着对象的消失而消失。
局部变量:随着方法的调用而存在,随着方法调用完毕而消失。
二.封装
(1)
(2)private关键字
(3)常见的应用:
类中的所有成员变量私有,给出对应的get/set方法。
(一)构造方法
特点:
1 class CodeBlock{
2 static {
3 System.out.println("我是静态代码块1");
4 }
5
6 static {//只执行一次
7 System.out.println("我是静态代码块2");
8 }
9
10 {//每次初始化都执行
11 System.out.println("我是构造代码块1");
12 }
13
14 public CodeBlock(){
15 System.out.println("我是构造方法");
16 }
17 }
18 class CodeBlockTest{
19 public static void main(String[] args){
20 new CodeBlock();
21 new CodeBlock();
22
23 }
24 }
25
26
27 运行结果:
28 静态代码块1
29 静态代码块2
30 构造代码块1
31 构造方法
32 构造代码块1
33 构造方法
1.当我们使用类A调用类B中的方法:
A.直接编译类A,编译器会自动编译类B
B.先把类B进行编译,并把class文件放到和类A一起的目录,再编译类A
2.在一个java文件中可以创建多个类,但是文件名和包含主函数的类名一致
四 黑马程序员-java面向对象(上)的更多相关文章
- 【黑马18期Java毕业生】黑马程序员Java全套资料+视频+工具
Java学习路线图引言: 黑马程序员:深知广大爱好Java的人学习是多么困难,没视频没资源,上网花钱还老被骗. 为此我们历时一个月整理这套Java学习路线图,不管你是不懂电脑的小 ...
- 黑马程序员+Winform基础(上)
黑马程序员+Winform基础 ---------------<a href="http://edu.csdn.net"target="blank"> ...
- 黑马程序员——JAVA基础之简述面向对象,类,变量,匿名对象
------- android培训.java培训.期待与您交流! ---------- 面向对象: 面向对象是相对面向过程而言 面向对象和面向过程都是一种思想 面向过程 强调的是功能行为 面向对象 将 ...
- 黑马程序员Java基础班+就业班课程笔记全发布(持续更新)
正在黑马学习,整理了一些课程知识点和比较重要的内容分享给大家,也是给自己拓宽一些视野,仅供大家交流学习,大家有什么更好的内容可以发给我 ,现有黑马教程2000G QQ 1481135711 这是我总 ...
- 黑马程序员----java基础笔记中(毕向东)
<p>------<a href="http://www.itheima.com" target="blank">Java培训.Andr ...
- 黑马程序员——JAVA基础之泛型和通配符
------- android培训.java培训.期待与您交流! ---------- 泛型: JDK1.5版本以后出现新特性.用于解决安全问题,是一个类型安全机制. 泛型好处: ...
- 黑马程序员—— Java SE(3)
----<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训 ...
- 黑马程序员——JAVA基础之语法、命名规则
------- android培训.java培训.期待与您交流! ---------- 1.java语言组成:关键字,标识符,注释,常量和变量,运算符,语句,函数,数组. 2.java关键字:被Jav ...
- 黑马程序猿——JAVA面向对象的特性:封装,继承,多态
- ----------android培训.java培训.java学习型技术博客.期待与您交流!------------ ...
- 黑马程序员----java基础笔记上(毕向东)
------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 笔记一共记录了毕向东的java基础的25天课程,分上.中.下 本片为上篇,涵盖前10天课程 1. ...
随机推荐
- AIRIOT物联网低代码平台如何配置Modbus RTU协议?
MBRTU即MODBUS RTU的简称,MODBUS是OSI模型第7层上的应用层报文传输协议,它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信.平台的MBRTU协议是建立在TCP协议之上的 ...
- 大数据之Hadoop集群的HDFS压力测试
测试HDFS写性能 原文:sw-code 1)写测试的原理 2)测试内容:向HDFS集群写10个128MB的文件(3个机器每个4核,2 * 4 = 8 < 10 < 3 * 4 =12) ...
- Python提取文本文件(.txt)数据的方法
本文介绍基于Python语言,遍历文件夹并从中找到文件名称符合我们需求的多个.txt格式文本文件,并从上述每一个文本文件中,找到我们需要的指定数据,最后得到所有文本文件中我们需要的数据的合集的方法 ...
- 【题解】A18536.星光交错的律动
题目跳转 思路:这道题可能跟博弈论有一点关系,没有学习过博弈论做起来应该问题也不大.思考一个问题,先手必胜的前提是什么? 有关更多的内容可以前往:浅谈有向无环图 先手必胜的前提是,在任何一种局面下,先 ...
- .NET Core 中使用GBK GB2312编码报错的问题
错误描述 环境 dotnet core 2.1 2.2 dotnet core 3.1 dotnet core 5.0 现象 当代码中使用 System.Text.Encoding.GetEnco ...
- 如何5分钟上手使用OCR
随便打开一个Microsoft Visual Studio,新建一个WinForms项目,从下面列表中随便选择一个NET框架. net35;net40;net45;net451;net452;net4 ...
- 开发者说PaddleOCR的.NET封装与应用部署
- docker基础使用和资源限制
为什么使用容器 docker设计目标: 提供简单的应用打包工具 开发人员和运维人员职责逻辑分离 多环境保持一致性 轻量级 kubernetes设计目标: 集中管理所有容器 资源编排 资源调度 弹性伸缩 ...
- Opencv笔记(13)积分图
积分图时一种允许子区域快速求和的数据结构,这种求和在很多方面都很有用,值得一提的是haar小波的计算,它用于人脸识别和类似的算法.Opencv支持积分图的三种变体,分别是总和.平方求和以及倾斜求和.每 ...
- Qt-ui的简单使用,常用控件(2)
1 简介 本文主要介绍Qt ui界面的简单使用,介绍一些常用的控件. 参考视频:https://www.bilibili.com/video/BV1XW411x7NU?p=22 2 常用控件 常用 ...