java面向对象day01
前言:
1.首先我们要明白:万物皆对象。现实中存在的事物都是对象。而面向对象技术就是对客观事物进行抽象。
2.而java语言是纯面向对象的的语言,它具有描述对象及其相互之间关系的语言成分。
3.定义类和建立对象是Java的主要任务。
一:面向对象的思维
1.万物皆对象,对象有行为(成员方法)和属性(成员变量)。
2.面向对象是基于面向过程的。
3.面向对象的三大特征:封装,继承,多态。
4.对象(object)定义:对象具有属性和方法,也就是我们说的特征和行为。
5.类:(class)定义:类为对象的类型,是具有相同属性方法的对象的集合。
6.消息;(message):消息类似与函数的调用,,通过消息机制可以实现对象之间的交互。
消息的三个组成部分;
- 消息接收者(接收对象名)
- 接收对象应采用的方法
- 方法所需要的参数
二:类和对象
1.类的定义:对象的类型,具有相同属性方法的集合。
2.类的组成:属性(变量,描述特征) 行为(方法,描述行为)
3.类和对象的联系:类是对象的概括或者是抽象,对象是类的实例化。
4.类和对象的理解:具体万物都是对象。
5.类的定义和使用:
【修饰符】 class 类名 【extends 父类名】【implements 接口名列表】{ //注意:【】表示此内容可有可无
成员变量(类的属性)
构造方法(初始化对象的一种特殊方法)
成员方法(描述类的功能)
}
6.构造方法:专门用来进行对象的初始化工作的。也称为构造函数。
语法;
[访问修饰符] 类名(){
}
注意:
当类中没有显式的构造方法,实例化该类的对象时,程序会自动创建一个公开的无参构造方法;
如果类中有显示的构造方法,程序就不会创建无参构造;
构造方法的名字必须与其类名相同。
构造方法没有返回值。
例如:
public class Student(){//Student类
String school;
public Student(){//构造方法
age=15;
school=“哈哈哈哈哈”;
}
public void showAge(){
System.out.println(" "+age);
}
7.刚开始学习的时候可能不懂什么叫做实例化:
实例化:就是用类创建对象的过程。
语法: 类名 对象名=new 类名(参数.........);
而实例化一个对象就是:为对象开辟内存空间。或者是不用声明,直接使用new构造函数名建立一个临时的对象。
例如:
public class A{
> public static void main(String[] args)【
> B b=new B();//实例化
> 】
> class B{
> public void print(){
> System.out.println("hello world")
> }
> }
>
三:this关键字
1.this表示当前对象,代表当前类的一个实例。为了解决java中变量的命名冲突和不确定性问题。
2.一个构造方法中需要调用同一个类的另一个构造方法,可以通过this()调用,但需要注意的是,this()语句必须写在可执行代码的第一行。
例如:
package com.num3.lianxi;
/*一个构造方法中需要调用同一个类的另一个构造方法,
可以通过this()的方式调用,但this()必须要书写在第一行
*/
public class Lianxi32 {
int i=20;
public Lianxi32(){
System.out.println("这是无参构造函数");
}
public Lianxi32(int i){
this(); //调用无参构造函数
this.i=i;
}
public void test(){
int i=30;
System.out.println(i);
System.out.println(this.i);
} public static void main(String[] args) {
Lianxi32 t=new Lianxi32();
t.test();
}
}
四:java中包的使用
1.包的定义:区别类名空间的的机制。
2.作用:解决类名冲突问题,管理java文件。
3.包的创建:
package 包名1【包名2】【包名3】
4.包的使用:
import语句可以引入包中的类。
java面向对象day01的更多相关文章
- JAVA面向对象
JAVA面向对象 对象 我们生活中能看到能摸到的一切事物都是对象.在程序中模拟出生活中的所有东西万物皆对象 只要是对象--属性和行为(方法) 属性 对象有什么 例如:学生有姓名.学 ...
- 理解JAVA - 面向对象(object) - 属性,方法
理解JAVA - 面向对象(object) - 属性,方法 多态的体现: 向上造型,父类接收子类对象:向上造型: 从父类角度看不到子类独有的方法:面向对象,人类认知世界的方式:生活中每天都 ...
- Java面向对象㈠ -- 封装
Java的面向对象有三大特征:封装.继承.多态.这里主要对封装进行讲解. 封装可以理解为隐藏一个类的成员变量和成员函数,只对外提供需要提供的成员函数. Java的封装主要通过访问权限控制符:priva ...
- 谈谈Java面向对象的三大特性
Java面向对象的三大特性就是指封装.继承.多态了. 一.封装: 概念:封装是指隐藏对象的属性和实现细节,仅对外提供公共访问方式. (举例:笔记本电脑就是一个封装体,Java语言中最小的封装体就是函数 ...
- Java面向对象:接口
Java面向对象之接口 什么是接口:接口是一种规范和标准,他们可以约束类的行为,是一些方法特征的集合 语法: [修饰符] interface 接口名 extends 父接口1,夫接口2....... ...
- 实验二 Java面向对象程序设计
实验二 Java面向对象程序设计 实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计 ...
- java基础1.0::Java面向对象、面向对象封装、抽象类、接口、static、final
一.前言 一直以来都是拿来主义,向大神学习,从网上找资料,现在就把自己在工作中和学习中的所理解的知识点写出来,好记星不如烂笔头,一来可以作为笔记自己温习,二来也可以给走在求学之路的同学们一点参考意见, ...
- 20145212《Java程序设计》实验报告二 《 Java面向对象程序设计》
20145212 实验二< Java面向对象程序设计> 实验内容 单元测试 三种代码 伪代码 百分制转五分制: 如果成绩小于60,转成"不及格" 如果成绩在60与70之 ...
- 20145213《Java程序设计》实验二Java面向对象程序设计实验报告
20145213<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装,继承,多态 初步掌握UML建模 熟悉S.O. ...
随机推荐
- MYSQL 二次筛选,统计,最大值,最小值,分组,靠拢
HAVING 筛选后再 筛选 SELECT CLASS,SUM(TOTAL_SCORES) FROM student_score GROUP BY CLASS HAVING SUM(TOTAL_SCO ...
- SQLite – HAVING 子句
SQLite – HAVING子句 HAVING使您能够指定过滤条件哪一组结果出现在最终的结果. WHERE子句的地方条件选定的列, 在有HAVING 子句的地方 就有GROUP BY子句包含的条件组 ...
- WPF知识点全攻略01- WPF相对WinFrom的优缺点
对比WPF和WinFrom前,先来了解下GUI现阶段在用的其他一些开发技术: MFC:微软基础类库,以C++的形式封装了Windows API,加上一些实用工具类. QT:奇趣科技开发的跨平台C++图 ...
- nodeJS和npm的环境配置
1.windows下的NodeJS安装是比较方便的(v0.6.0版本之后,支持windows native),只需要登陆官网(http://nodejs.org/),便可以看到首页的“INSTALL” ...
- ERROR: HHH000091: Expected type: java.sql.Timestamp, actual value: java.lang.Integer
在将MySql的数据对应到Java的实体类的时候, 遇到了错误 关键点: Hibernate从mysql数据库查出来的Timestamp类型的数据, 会被Hibernate(或者是数据库连接池Drui ...
- python3 yum not found
vi /urs/bin/yum 将#!/usr/bin/python的python改为python2.x(你系统的python2的版本)
- Java中的代理--proxy
讲到代理,好像在之前的springMVC,还是spring中或者是hibernate中学习过,并没有特别在意,这次好好理解一下.(原来是在spring中的AOP,面向切面 Aspect Oriente ...
- 去BAT,你应该要看一看的面试经验总结
我去年12月份从上一家公司离职,一直到今年3月份,基本上都在面试中度过来的. 先交代下背景:坐标上海,做技术开发,我本人面试的职位是linux服务器开发,最倾向的职位是服务器开发主程或技术经理.我本人 ...
- 生产环境屏蔽swagger(动态组装bean)
spring动态组装bean 背景介绍: 整合swagger时需要在生产环境中屏蔽掉swagger的地址,不能在生产环境使用 解决方案 使用动态profile在生产环境中不注入swagger的bean ...
- 第一次:从今开始玩Linux,Ubuntu16.04
首先声明,我的文章不配图,就靠文字描述,然后自己体会,摸着石头体验吧! 从今天开始玩Linux,Ubuntu16.04据说是比较稳定的,界面友好,类似与Windows界面,也有Linux的命令终端,用 ...