前言:

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的更多相关文章

  1. JAVA面向对象

    JAVA面向对象 对象   我们生活中能看到能摸到的一切事物都是对象.在程序中模拟出生活中的所有东西万物皆对象   只要是对象--属性和行为(方法)   属性   对象有什么   例如:学生有姓名.学 ...

  2. 理解JAVA - 面向对象(object) - 属性,方法

    理解JAVA - 面向对象(object) - 属性,方法 多态的体现:    向上造型,父类接收子类对象:向上造型:    从父类角度看不到子类独有的方法:面向对象,人类认知世界的方式:生活中每天都 ...

  3. Java面向对象㈠ -- 封装

    Java的面向对象有三大特征:封装.继承.多态.这里主要对封装进行讲解. 封装可以理解为隐藏一个类的成员变量和成员函数,只对外提供需要提供的成员函数. Java的封装主要通过访问权限控制符:priva ...

  4. 谈谈Java面向对象的三大特性

    Java面向对象的三大特性就是指封装.继承.多态了. 一.封装: 概念:封装是指隐藏对象的属性和实现细节,仅对外提供公共访问方式. (举例:笔记本电脑就是一个封装体,Java语言中最小的封装体就是函数 ...

  5. Java面向对象:接口

    Java面向对象之接口 什么是接口:接口是一种规范和标准,他们可以约束类的行为,是一些方法特征的集合 语法: [修饰符] interface 接口名 extends 父接口1,夫接口2....... ...

  6. 实验二 Java面向对象程序设计

    实验二 Java面向对象程序设计 实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计 ...

  7. java基础1.0::Java面向对象、面向对象封装、抽象类、接口、static、final

    一.前言 一直以来都是拿来主义,向大神学习,从网上找资料,现在就把自己在工作中和学习中的所理解的知识点写出来,好记星不如烂笔头,一来可以作为笔记自己温习,二来也可以给走在求学之路的同学们一点参考意见, ...

  8. 20145212《Java程序设计》实验报告二 《 Java面向对象程序设计》

    20145212 实验二< Java面向对象程序设计> 实验内容 单元测试 三种代码 伪代码 百分制转五分制: 如果成绩小于60,转成"不及格" 如果成绩在60与70之 ...

  9. 20145213《Java程序设计》实验二Java面向对象程序设计实验报告

    20145213<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装,继承,多态 初步掌握UML建模 熟悉S.O. ...

随机推荐

  1. MySQL-07 日志管理

    学习目标 MySQL日志 二进制日志 错误日志 查询通用日志 慢查询日志 MySQL日志 MySQL日志分为四类,说明如下: 错误日志:记录MySQL服务的启动.运行或者停止时出现的问题. 查询日志: ...

  2. Perl 安装 JSON 包

    $tar xvfz JSON.tar.gz $cd JSON $perl Makefile.PL $make $make install

  3. NETCORE使用DB First

    1)引用 (1)Install-Package Microsoft.EntityFrameworkCore (2)Install-Package Microsoft.EntityFrameworkCo ...

  4. Oracle数据库的基本使用

    1.Linux安装  (略) 2.Oracle数据库监听命令: 监听状态:$lsnrctl status 启动监听:$lsnrctl start 关闭监听:$lsnrctl  stop 重载监听:$l ...

  5. ArrayList集合(JDK1.8)

    简述 List是继承于Collection接口,除了Collection通用的方法以外,扩展了部分只属于List的方法. 常用子类  ?ArrayList介绍 1.数据结构 其底层的数据结构是数组,数 ...

  6. Django框架基础知识14-类视图

    MTV view视图 wsgi函数 def index(request): .... return HttpResponse() 特定的HTTP方法.get,post可以定义单独的方法 继承,多继承, ...

  7. 杭电 2141 Can you find it? (二分法)

    Description Give you three sequences of numbers A, B, C, then we give you a number X. Now you need t ...

  8. LeetCode01--寻找两个有序数组的中位数

    ''' 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2. 请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n)). 你可以假设 nums1 和 nu ...

  9. Shell脚本问题详解

    例1:找出当前系统中端口大于1024的程序! 使用netstat -tuln查询出的结果如下,需要输出红色字体的行: [root@localhost ~]# netstat -tuln Active ...

  10. SqlParameter[] parameters

    SqlParameter[] parameters = { new SqlParameter("@rdTypeName", readertype.rdTypeName), new ...