java类与对象(属性,方法)的使用
---恢复内容开始---
类和对象是java编程中很重要的应该面向对象的一课,实际上可以将类看作对象的载体,它定义了对象所具有的功能。Java是面向对象的语言,因此掌握类与对象是学习Java语言的基础。
1、什么是类?
类是具有相同的属性和功能的事物的抽象的集合,在面向对象程序设计中,人们把一类事物的静态属性和动态可以执行的操作组合在一起就得到类这个概念。类是个抽象的概念,用来模拟一类事物,一旦定义了一个类,这个类就永远存在。比如:人,人包含着有中国人和外国人,他们都有行为等相同的属性,他们都具有走路,吃饭,工作等这些相同的,可动态执行的操作,所以可以定义“人类”这样一个类来包含他们相同的属性和功能。
2、怎么定义类?
package pkg1; //定义一个class类。 public class Car{ private String name; private int age; } public void brakes{ 8 }
注:1. 类名称首字母要大写,如果要定义的类名称由多个单词组成,则每个单词的首字母都要大写。
概念不多说,这篇笔记从代码入手。(为了直观的讲解,下面代码编写可能会使用到中文)
public class 车品牌{ private String 品牌; private int 速度 = 0; public void 品牌(String 品牌){ this.品牌 = 品牌; } public void 踩油门(){ if(速度<100){ this.速度 += 20; } } public void 轻踩刹车(){ if(速度>0){ 速度 -= 5; } if(this.速度<0){ this.速度 = 0; } } public void 显示速度(){ System.out.println("速度是:"+this.速度); } }
定义类的成员变量的示例如下:
就是类的属性。这种变量分为成员变量和局部变量
成员变量:
- 成员变量定义在类中,在整个类中可以被访问。
- 成员变量有默认初始化值。
局部变量:
- 局部变量只定义中局部范围内,如:方法内,代码内
- 局部变量存在于栈内存中。
注:在方法体外,类体内的声明在变量称为成员变量。
在方法体内部声明的变量称为局部变量。
在这里变量不要被外部引用,所以一般情况下使用private修饰符。
方法即对象的行为,为定义在类中的具特定功能的一段独立的小程序,方法也称为函数
方法运行后的返回结果的数据类型,
方法的特点:
定义方法可以将功能代码进行封装。
便于该功能进行复用。 方法只有被调用才会被执行。
方法的出现提高代码的复用性。
4、调用方法:
同样再写一个测试类的文件
package pkg1; class Test{ public static void main(String args[]){ 车品牌 小飞车= new 车品牌(); 小飞车.踩油门(); 小飞车.轻踩刹车(); 小飞车.品牌("宝马x5"); 小飞车.显示速度(); } }
首先先创建一个对象
语法:类名 对象名=new 类名();
大多数学习java的都会写,但是理解方面是这样的,new一个类名,就会得到一个对象,而这个对象的类型就是这个类名的类型比如说:Car car=new Car();//就是通过new一个Car类名,得到car这个对象,而这个对象就是Car类型的。
所以先new出一个对象
用对象名.方法名获取参数
运行效果
构造方法
构造方法作用就是对类进行初始化。 如果你没有定议任何构造方法的形式,程式会为你取一个不带任何参数的构造函数,那么你产生类的对像时只能用不带参数的方法,如:class a {}//没有任何构造函数。
构造方法就是与类同名的那个方法,它的作用是可以用来初始化,例子如下:
package pkg5; public class Car{ private String 品牌; private int 价格= 200000; //构造方法 public Car(String 品牌){ this.品牌 = 品牌; } public void setCar(){ System.out.println("品牌:"+this.品牌+" "+"价钱:"+this.价格); } }
测试类:
package pkg5; public class Test{ public static void main(String[] args){ Car c1 = new Car("比亚迪-唐"); //作用 c1.setCar(); } }
this关键字
每个实例方法都有一个this的关键字,他引用正在被调用的方法的所属当前对象,在你的方法引用一个实例变量时,编辑器会隐含使用的这个变量。
this关键字主要有三个应用:
(1)this调用本类中的属性,也就是类中的成员变量; (2)this调用本类中的其他方法; (3)this调用本类中的其他构造方法,调用时要放在构造方法的首行。
java类与对象(属性,方法)的使用的更多相关文章
- java——类、对象、方法
一.类 1.Java语言把一组对象中相同属性和方法抽象到一个Java源文件就形成了类. 一个java文件可以有多个类,但是每一个类都会生成一个class字节码文件. 如果class 前加public ...
- [Java]Java入门笔记(三):类、对象和方法
七.类.对象和方法 类和对象的关系 类定义了对象的本质: 类(class)是对象(object)的模板,而对象(object)是类的一个实例(instance). 使多个对象的指向相同: Studen ...
- python 类、对象、方法、属性
在python中,一个对象的特征也称为属性(attribute).它所具有的行为也称为方法(method) 结论:对象=属性+方法 在python中,把具有相同属性和方法的对象归为一个类(class) ...
- python中的类,对象,方法,属性等介绍
注:这篇文章写得很好.加底纹的是我自己的理解 python中一切皆为对象,所谓对象:我自己就是一个对象,我玩的电脑就是对象,坐着的椅子就是对象,家里养的小狗也是一个对象...... 我们通过描述属性( ...
- python类、对象、方法、属性之类与对象笔记
python中一切皆为对象,所谓对象:我自己就是一个对象,我玩的电脑就是对象,坐着的椅子就是对象,家里养的小狗也是一个对象...... 我们通过描述属性(特征)和行为来描述一个对象的.比如家里的小狗, ...
- day 23 对象的名称空间 类,对象属性和方法 封装 接口提供
一.对象的特有名称空间 # 对象独有的名称空间:在产生对象时就赋初值 '''class ted: def func(): 当func里不存在参数时,调用时不需要给值 print('hah')ted.f ...
- C#类、对象、方法和属性详解
C#类.对象.方法和属性详解 一.相关概念: 1.对象:现实世界中的实体(世间万物皆对象) 2.类:具有相似属性和方法的对象的集合 3.面向对象程序设计的特点:封装 继承 多态 4.对象的三要素:属性 ...
- java类和对象之间的差
java类和对象之间的差别是一个普遍的问题,刚开始学习java当它来到与类和对象接触.今天就来总结一下它们之间的差异. 先说说class和object差异.事实上,词:object是全部class的父 ...
- Java进阶(四十)Java类、变量、方法修饰符讲解
Java进阶(四十)Java类.变量.方法修饰符讲解 Java类修饰符 abstract: 将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现. final: 将一个类生命为最终(即非继承类) ...
随机推荐
- ssh框架整合笔记
1.建立普通的Javaweb项目,导入项目所必须的jar包. 2.配置web.xml文件. web.xml 3.在src下建立struts.xml. struts.xm 4.在实体包下配置 实体名 ...
- 《HelloGitHub》第 26 期
公告 五月初 hellogithub.com 网站做了优化和试错.因为我个人能力原因,导致这段时间网站出现了间断性不能访问,现在问题已经修复.多谢大家的支持.理解和反馈. 本期新增了"星图& ...
- PoiDocxDemo【Android将表单数据生成Word文档的方案之二(基于Poi4.0.0),目前只能java生成】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 这个是<PoiDemo[Android将表单数据生成Word文档的方案之二(基于Poi4.0.0)]>的扩展,上一篇是根 ...
- 数据库分片(Database Sharding)详解
本文由云+社区发表 作者:腾讯云数据库 Introduction 导言 任何看到显著增长的应用程序或网站,最终都需要进行扩展,以适应流量的增加.以确保数据安全性和完整性的方式进行扩展,对于数据驱动的应 ...
- SQL中关于Join、Inner Join、Left Join、Right Join、Full Join、On、 Where区别
前言: 今天主要的内容是要讲解SQL中关于Join.Inner Join.Left Join.Right Join.Full Join.On. Where区别和用法,不用我说其实前面的这些基本SQL语 ...
- linux安装nvm node版本管理器 nvm常用命令 部署node服务器环境
1,nvm git地址点击打开链接,安装命令 curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh ...
- Mybatis之旅第六篇-关联查询
一.引言 通过动态SQL我们可以进行复杂SQL的编写,但之前的例子都是单表查询,在实际开发中,当然不可能都是单表,很多时候我们需要进行关联多表查询(有些公司为了性能还是尽量的使用单表查询),表与表之间 ...
- xamarin forms中的Button文本默认大写
问题来源 使用xamarin forms创建的android项目中,Button.Toolbar的右侧菜单按钮上的如果是字母的话,在android5.0以上,默认的文本都是大写,这种情况iOS项目不存 ...
- [TCP/IP] TCP的传输连接管理
1.连接建立=>数据传输=>连接释放 2.主动发起连接的是客户端,被动接受连接的是服务器 3.三次握手 客户端 ==> SYN是1同步 ,ACK确认标志是0,seq序号是x ==&g ...
- 解决Windows10运行VMware Workstation出现与Device Guard不兼容导致无法运行与创建虚拟机问题
问题表现如下: 1.有Hyper-V功能未关闭的可能, 随便贴一个链接,网上一样的方法很多: https://jingyan.baidu.com/article/9f63fb916b50e1c8400 ...