Java-类和对象、关键字、构造方法
创建对象
类名 对象名=new 类名();
使用对象
使用成员变量 对象名.变量名
使用成员方法 对象名.方法名();
创建多个对象时
成员变量值不同,但是方法多个对象公用
package smile;
//创建一个包
import java.util.*;
public class main1 {public static void main(String args[]){Student s=new Student();System.out.println(s);//输出地址值smile.Student@1b6d3586,包名加类名System.out.println(s.name+","+s.age);//s中成员变量name默认值null,age默认0Scanner input=new Scanner(System.in);s.name=input.next();//s.name="lihua";s.age=19;System.out.println(s.name+","+s.age);//输出lihua,19s.study();s.doHomework();Student s1=s;//s1与s指向同一地址System.out.println(s1.name+","+s1.age);}
}
class Student {String name;int age;public void study(){System.out.println("好好学习");}public void doHomework(){System.out.println("做练习");}
}
成员变量:类中方法外的变量
局部变量:方法中的变量(方法形参的基础上也是局部变量)
封装
private关键字
权限修饰符
可以修饰成员变量和成员方法
作用:保护成员不被别的类使用,被privat修饰的成员只在本类中才能访问
被privat修饰的成员变量如果需要被其他类使用,提供相应操作
“get变量名()”方法,用于获取成员变量的值,方法用public修饰
“set变量名(参数)”方法,用于设置成员变量的值,方法用public修饰
//举例1
package smile;
//创建一个包
import java.util.*;
public class main1 {public static void main(String args[]){Student s=new Student();Scanner input=new Scanner(System.in);s.name=input.next();//name不是私有成员变量,故在其它类中可以访问//s.age=20;//age是私有成员变量,其他类不可以直接访问s.setAge(20);//需要用setage()方法设置s.show();}
}
class Student {String name;private int age;//提供get/set方法public void setAge(int a){//set方法,设置age的值if(a<0){System.out.println("年龄有误");}else{age=a;}}public int getAge(){//get方法,获取age的值return age;}public void show(){System.out.println(name+","+age);}
}
//举例2
package smile;
//创建一个包
import java.util.*;
public class main1 {public static void main(String args[]){Student s=new Student();s.setName("lihua");s.setAge(20);System.out.println(s.getName()+","+s.getAge());}
}
class Student {private String name;private int age;//提供get/set方法public void setAge(int a){//set方法,设置age的值age=a;}public int getAge(){//get方法,获取age的值return age;}public void setName(String n){//set方法,设置age的值name=n;}public String getName(){//get方法,获取age的值return name;}public void show(){System.out.println(name+","+age);}
}
this关键字
构造方法
package smile;
//创建一个包
import java.util.*;
public class main1 {public static void main(String args[]){Student s=new Student();s.show();Student s1=new Student("lihua");s1.show();Student s2=new Student(20);s2.show();Student s3=new Student("lihua",20);s3.show();}
}
class Student {private String name;private int age;//构造方法public Student(){}public Student(String name){this.name=name;}public Student(int age){this.age=age;}public Student(String name,int age){this.name=name;this.age=age;}public void show(){System.out.println(name+","+age);}
}
/*输出null,0
lihua,0
null,20
lihua,20
*/
Java-类和对象、关键字、构造方法相关推荐
- JAVA类和对象(构造方法、方法重载、this关键字)
Java是一门完全面向对象的编程语言:类和对象是面向对象编程的基础和核心. 面向对象的编程思想是来源于现实生活:面向对象编程是使用代码来模拟现实生活中的场景. 1.现实生活中有哪些是对象? 对象:在现 ...
- 学习-Java类和对象之构造方法与对象创建之求椭圆面积
任务描述 本关任务:已知椭圆的短半轴长为 15.50,长半轴的长为 20.00,计算椭圆面积. 椭圆的面积公式为S=πab,其中a.b分别为椭圆的短半轴长和长半轴长. 相关知识 为了完成本关任务,你需 ...
- 杨校老师课堂之Java类与对象、封装、构造方法
杨校老师课堂之Java类与对象.封装.构造方法 本篇文章内容如下: 面向对象 类与对象 三大特征--封装 构造方法 教学目标 能够理解面向对象的思想 能够明确类与对象关系 能够掌握类的定义格式 能够掌 ...
- java 类与对象、封装、构造方法
java 类与对象.封装.构造方法 面向对象 类与对象 三大特征--封装 构造方法 第1章 面向对象思想 1.1 面向对象思想概述 概述 Java语言是一种面向对象的程序设计语言,而面向对象思想是一种 ...
- 【Java类和对象】
Java类和对象 在Java简介中就有介绍到,Java是一门面向对象的编程语言,在面向对象的编程语言中,肯定离不开对象这个概念,而对象则是类的实例,所以也肯定离不开类这个概念.简单的来说就是,在Jav ...
- 【Java】第7章 Java 类和对象 头歌Educoder实训作业(七)
第1关:练习-Java类和对象之类的声明之复数运算 任务描述 本关任务:求两个复数相加后的结果. 两个复数之间相加的运算法则:实部与实部相加,虚部与虚部相加. 关于复数的定义,可以自行查阅,本实训不做 ...
- java类与对象(超详细!)
3. 类与对象 3.1 面向对象编程三特性: 封装 继承 多态 3.2 类的编写 java是面向对象语言,类是基本要素,一个java程序就是由若干类组成. 何为对象?对象就是用类声明的变量. 如何编写 ...
- JAVA类和对象(1)
JAVA类和对象 1.类和对象的初步认识 2.类的实例化 3.类的成员 3.1 字段/属性/成员变量 3.2 null 3.3 引用的指向 3.3 方法 (method) 3.4 static关键字 ...
- Java类中this关键字和static关键字的用法详解
今天给大家总结介绍一下Java类中this关键字和static关键字的用法. 文章目录 this关键字用法: 1:修饰属性,表示调用类中的成员变量 2:this修饰方法 3:this表示当前对象的引用 ...
- 实验2 Java类和对象的设计
实验题目:Java类和对象的设计 一.上机目的和要求 理解面向对象的编程思想.类与对象的概念: 加深理解封装性.继承性和多态性: 掌握this.super.final.static等关键字的使用: 掌 ...
最新文章
- 超级干货丨优美的课程笔记,吴恩达点赞的深度学习课程信息图
- 打不开添加删除程序的故障
- Vue 单文件组件||Vue 单文件组件的基本用法||webpack 中配置 vue 组件的加载器|| 在 webpack 项目中使用 vue
- 交换机的4种网络结构方式你知道是什么吗?
- 【活动回顾】Edge X Kubernetes,探索云原生新边界
- 还不会python面相对象?活该单身(面向对象基础+交互关系)
- python3 open打开文件_Python3基础 file open 打开txt文件并打印出全文
- magento 自动发送跟踪号_光伏电站自动跟踪集散控制系统的研究
- Excel技巧 一秒取消合并单元格,让你的取消合并操作简单快捷
- c++ 优先队列(priority_queue)
- scala windows搭建开发环境
- ddPCR--数字微滴PCR
- 查看git HEAD
- [PAT A1028]List Sorting
- html js正则表达式语法,js正则表达式 非中文_js正则表达式匹配中文_js正则表达式语法...
- 导入maven项目,报错Cannot read lifecycle mapping metadata for artifact org.apache.maven.plugins:mav
- 计算机网络微课堂CSMA/CD协议-争用期碰撞时刻以及收到碰撞信号的时间时间的推导
- 【scrapy实战】获取我的博客信息
- Scala 的安装教程
- Dirty Pipe脏管道提权漏洞复现(CVE-2022-0847)
热门文章
- swiper动态加载数据滑动失效,ajax执行后swiper.js的效果消失问题
- Request介绍及演示样例 PART1
- spring resttemplate中的转码
- 从网页上考的代码考到eclipse里面,会出现每行开头的空格下面有红色异常提示,为什么?...
- APP动态界面设计使用的利与弊
- oracle体系结构视频学习笔记
- LINUX操作系统的内核编译内幕详解一
- 7天学完Java基础之4/7
- 正则表达式(一) -- 元字符(转)
- javascript 容错处理代码(屏蔽js错误)