Java基础知识(六)——面向对象(1)——类

本文介绍了Java编程中的面向对象基础,包括封装、继承和多态的概念。封装强调将属性和行为结合成独立的对象,隐藏内部细节。继承允许子类继承父类的属性和方法,实现代码复用。多态分为方法重载和对象多态,前者在同一类中用相同名称但参数不同的方法,后者体现在子类对象可以替代父类对象并表现出不同行为。文章通过类定义、对象创建及访问属性和方法的实例,详细阐述了这些概念。
摘要由CSDN通过智能技术生成

Java基础知识(六)——面向对象(1)

基本概念

面向对象:根据用户需求直接完成产品制作,对于所需要的元素单独提取
面向过程:根据用户的需求分析并完成设计图,完成所有准备工作后再分块制作,最后将所有部分组装在一起

封装性

一、把对象的属性和行为看成一个密不可分的整体,将这两者“封装”在一个不可分割的独立单位(即对象)中。
二、“信息隐蔽”,将不需要外界知道的信息属性隐藏

继承性

用户开发的程序类继承于已有的类。现在类所描述过的属性及行为(即已定义的类和方法)在继承的类中完全可用。
若一个子类只允许继承一个父类称为单继承;若允许继承多个父类称为多继承。

多态性

方法重载:在一个类中,允许多个方法使用同一个名称,但方法的参数不同完成的功能也不同
对象多态:子类对象可以与父类对象进行相互转换,而且根据其使用的子类的不同完成的功能也不同

定义

class 类名称{
    数据类型 属性;
...
    public 返回值的数据类型 方法名称 (参数1,参数2...) {
      程序语句 ;
      [return 表达式;]
      }
}                   

eg.

class Person{
    String name;      //申明姓名属性
    int age;          //申明年龄属性
    public void tell () {      //取得信息的方法
      System.out.println("姓名:"+name+",年龄:"+age);
      }
}                   

以上过程中在这里插入图片描述

1层表示类的名称
2层表示属性的定义,按照”访问权限 属性名称:属性类型“的格式定义
3层表示类中方法的定义,按照“访问权限 方法名称():方法返回值”的格式定义,若方法中有传递的参数,则在括号内加上(参数名称:参数数据;…)

对象的创建

格式

类名 对象格式 = null;          //声明对象
对象名称 = new 类名();         //实例化对象,只要存在new就表示可以开辟新的堆内存空间                  


类名 对象名称 = new 类名();                 

eg

class Person{
    String name;      //申明姓名属性
    int age;          //申明年龄属性
    public void tell () {      //取得信息的方法
      System.out.println("姓名:"+name+",年龄:"+age);
      }
}
public class Test{
  public static void main(String[] args){
       Person per = new Person(); 
  }
}                   

==注:==所有的对象名称都在栈空间中储存,而对象的具体内容则保存在对应的堆空间中。必须使用关键字new才可以开辟一个新的堆空间,堆空间中储存属性信息

访问对象中的属性或方法

格式

访问属性:对象名称.属性名
访问方法:对象名称.方法名()                 

eg.

class Person{
    String name;      //申明姓名属性
    int age;          //申明年龄属性
    public void tell () {      //取得信息的方法
      System.out.println("姓名:"+name+",年龄:"+age);
      }
}
public class Test{
  public static void main(String[] args){
       Person per = null(); 
       per.name="张三";
       per.age=30;
       per.tell();
  }
}                   

多个对象

eg:

class Person{
String name;
int age;
public void tell(){
   System.out.println("姓名:"+name+",年龄:"+age);
      }
}
public class Test{
  public static void main(String[] args){
    Person per1 = new Person;
    Person per2 = new Person;
    per1.name="zhangsan";
    per1.age=30;
    per2.name="lisi";
    per2.age="20";
    System.out.println("per1内容");
    per1.tell();
    System.out.println("per2内容");
    per2.tell();
  }
}


在创建多个对象的时候,要注意对象的概念,即一个类包含有多个对象,每一个类所包含的元素可以是多个的,因此每一个对象的内容需要对应满足于类中所包含的所有元素。
如果需要使用方法则将方法放置于类板块中

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值