`
海阔天空yqh
  • 浏览: 5341 次
  • 性别: Icon_minigender_2
社区版块
存档分类
最新评论
阅读更多

 一、对象
     1.定义:生活中存在的具体实体,具有明确定义的状态和行为。 
     2.对象包括属性和方法 
                   (1)属性:事物本身的特征    如某个人的姓名、身高、年龄等或某个事物的名称,容量等

                   (2)方法:对象的行为,像学习某种语言,玩某个游戏等都可以看作一种方法,类似于c语言中定义的不同函数

二、类

     1.定义:按照固定的格式,对具体对象所共有的属性和方法进行定义,定义成一个模板。

     2.组成

                 (1)属性:同对象中的属性差不多,如某个人的姓名是他这个对象的属性,而姓名是整个人类这个类的属性

                 (2)方法分为普通方法和构造方法:

                普通方法:与对象中的方法类似,区别在于在类中,学习本身就可以作为一种方法,在对象中方法必须是学习某种具体的事物。

                构造方法:又叫构造器方法,是实例化对象的方法;用途:实例化对象,给属性设置初始值。

               二者的区别:返回值不同;方法名不同

      3.定义一个类的格式

//类名必须与文件名完全一致
public class 类名{
       
       //定义属性
        private 数据类型 属性名;

       //定义方法
        public 返回值数据类型(无返回值用void) 方法名(数据类型 形参名,...){
                  //方法体
        }
        //方法名后的括号内也可无形参

        //定义构造方法
        public 类名(数据类型 形参名,...){
	//方法体
       }

       //如果类中没有定义构造方法,Java会给类提供一个默认的构造方法
         public 类名(){
                 //方法体
      }
}

 

三、实例化对象与调用方法

      1.实例化对象

//实例化类的一个对象,Student是某一个类
类名 对象名=new 类名();
//如:
Student stu1=new Student();
//以上代码等价于:
Student stu1;/实例化Student类对象stu1,在栈中开辟一块新的内存空间指向stu1的对象名
stu1=new Student();/*将stu1这个变量名指向新建的一个Student对象,即在堆中开辟一块新的
内存空间存放这个对象,并让stu1指向该内存的首地址*/

      附:用类实例化对象时对象可作为参数

      2.调用方法

//格式:对象名.方法名(实参或者参数值,...);
stu.setName("小明");
//调用方法,并接收返回值;
int s=stu.getScore;
s-=1;
stu.study();

 

 四、方法(构造方法和普通方法)重载

       实现方法重载的条件
       1.方法名字必须要完全相同
       2.方法所带的参数个数、参数类型、参数顺序,这三项中最少要有一个是不同的。

public void study(){
		System.out.println(name+"学习中,学分是:"+score);
       }
	
public void study(int s){
		score += s;
		System.out.println(name+"学习中,学分是:"+score);
       }

 

五、值传递和引用传递

      1.值传递适用于java的基本数据类型+String,类似于c语言中的传值;

public class Student{
       public void changInt (int t){
             t=100;
      }
}


public class Manager{
        public static void main(String [] args){
                Student stu=new Student();
                int i=1000;
                stu.changInt(i);
                System.out.println("这里i的值为:"+i);
       }
}
//输出值为1000;方法中对t的改变不影响调用代码中i的值,即为值传递

 

       2.引用传递适用于Java的引用类型(对象类型)[类,抽象类,接口,数组 ],类似于c语言中的传地址。

public static void main(String[] args){
       Student stu1=new Student();
       stu1.setName("张三");
      Student stu2=new Student();
        stu2.setName("李四");
      Student stu3=new Student();
        stu3.setName("王五");
      stu1=stu2;
        stu2=stu3;
        stu3=stu1;
       String name3=stu3.getName;
       System.out.print("此时stu3的名字为:"+name3);
}
//此时输出得到“李四",stu3最终指向stu2对象,即为引用传递

 

 

分享到:
评论

相关推荐

    Java习题02类与对象的基本概念.doc

    Java 中的类与对象基础概念 Java 语言中的类和对象是两个基本概念,它们之间存在着紧密的关系。在 Java 中,类是对象的蓝图或模板,它定义了对象的属性和行为。对象是类的实例,每个对象都有其自己的状态和行为。 ...

    02_类和对象.html

    02_类和对象.html

    第04章 面向对象(上) 02 类和对象的定义格式

    构造器是一种特殊的方法,它的名称与类名相同,用于初始化新创建的对象。当创建一个类的新实例时,会自动调用构造器。在上面的例子中,`ClassName()`是默认构造器,没有参数。 方法定义了对象的行为。`method1`和`...

    python 02、面向对象1-1_面向对象概述、类和对象_Day09_AM.mp4

    python 02、面向对象1-1_面向对象概述、类和对象_Day09_AM.mp4

    第十一天 02类和对象【千锋Python人工智能学院】1

    5. **类与对象的关系** 类是抽象的概念,定义了事物的一般特征和行为,而对象是这些特征和行为的具体体现。同一个类可以创建多个不同的对象,每个对象都有其独特的属性值。在上述例子中,`husky`和`chow_chow`都是`...

    02Java面向对象设计(类-对象-构造方法-重栽).ppt

    02Java面向对象设计(类-对象-构造方法-重栽).ppt该文档详细且完整,值得借鉴下载使用,欢迎下载使用,有问题可以第一时间联系作者~

    面向对象程序设计02C++类.ppt

    公有成员则可供任何外部代码访问,作为类与外界交互的接口。保护成员在类及其派生类中可访问,主要用于继承时的控制。 类的声明通常在头文件(.h)中,实现则在源文件(.cpp)中,主函数(Main)通常放在单独的...

    完整版 Java基础入门教程 Java程序语言设计 03 java对象 类与对象4(共35页).ppt

    完整版 Java基础入门教程 Java程序语言设计 03 java对象 类与对象2(共23页).ppt 完整版 Java基础入门教程 Java程序语言设计 03 java对象 类与对象3(共24页).ppt 完整版 Java基础入门教程 Java程序语言设计 03 ...

    完整版 Java基础入门教程 Java程序语言设计 03 java对象 类与对象3(共24页).ppt

    完整版 Java基础入门教程 Java程序语言设计 03 java对象 类与对象2(共23页).ppt 完整版 Java基础入门教程 Java程序语言设计 03 java对象 类与对象3(共24页).ppt 完整版 Java基础入门教程 Java程序语言设计 03 ...

    面向对象程序设计(Java)- 实验二:Java类与对象实践教程

    ### 面向对象程序设计(Java)- 实验二:Java类与对象实践教程 #### 实验概览 本次实验旨在帮助信息科学与工程学院的学生深入理解和掌握面向对象编程的基本概念及其在Java中的实现方式。实验侧重于基本类的定义与...

    0-视频配套的PPT和程序汇总.zip

    这可能表示文件夹内包含多个子文件,如PPT文件(可能命名为类似"01基础概念.pptx"、"02类与对象.pptx"等),用于解释各种编程概念,以及一系列的C#源代码文件(可能为".cs"格式),如"03示例代码\HelloWorld.cs"、...

    E02_面向对象复习.pdf

    13. 向上转型是将子类对象赋值给父类引用的过程,而向下转型是将父类引用强制转换为子类对象的过程。 14. 在多态中,成员变量的访问遵循编译时类型(父类),而成员方法的调用遵循运行时类型(子类)。 15. `...

    java课件,包括类与对象,数组,字符串,线程等

    在`04 类与对象1.ppt`和`05 类与对象2.ppt`中,你将学习如何声明、实例化类以及理解封装、继承和多态等面向对象特性。 2. **数组**: 数组是存储同一类型元素的集合,提供了高效的数据管理方式。Java支持一维、二...

    DXUT库和渲染对象类02

    在"DXUT库和渲染对象类02"这个主题中,我们将深入探讨DXUT库的功能和如何利用它来创建和管理渲染对象,以及HLSL在DirectX 3D中的应用。 1. **DXUT库的介绍**:DXUT库包含了各种实用函数和类,用于处理DirectX应用...

    传智播客_俄罗斯方块游戏02_面向对象设计

    俄罗斯方块游戏开发视频包括13小节: 01_游戏功能演示与说明 02_游戏中的面向对象分析与设计 03_使用传智播客提供的API类组装俄罗斯方块游戏 04_编写俄罗斯方块游戏中的各个类的主体框架性代码 ...

    Java技术及其应用 02 面向对象结构(共106页).ppt

    类和对象之间的联系使得我们能够通过类来组织和管理代码,通过对象来处理实际的数据和业务逻辑。 在实际编程中,我们还需要关注成员变量和局部变量的区别。成员变量属于类,生命周期贯穿整个对象的生存期;而局部...

    第02章面向对象的程序设计与软件开发初步.pdf

    在本章中,我们将深入探讨面向对象编程的基础知识,包括类、对象、实例方法、实例数据值以及软件生命周期。 首先,类(Class)是创建对象的蓝图,它定义了一组属性(数据)和行为(方法)。对象是类的具体实例,每...

Global site tag (gtag.js) - Google Analytics