Java面向对象02——回顾方法(定义、调用)及加深

方法的定义
package oop.demon01;
//Demon01 类
public class Demon01 {
//main 方法
public static void main(String[] args) {
}
/*
修饰符 返回类型 方法名(。。。。){
//方法体
return 返回值;
}
如果返回值是 void ----- return ; (空)
*/
//return 结束方法,返回一个结果
public String sayHello(){
return "hello,world";
}
public int max(int a, int b){
return a>b ? a : b;//三元运算符
}
}
方法的调用(静态 、非静态)
package oop.demon01;
public class Demon02 {
public static void main(String[] args) {
//实例化这个类
//new Student().say(); 一般用下面的表示法
//对象类型 对象名 = 对象值
Student student= new Student();//实例化
student.say();//对象名.方法
}
}
// 方法调用
//静态方法 static : 类名.方法名 Student.say();
//非静态方法 (之前的scanner)
/*
实例化这个类(new)
对象类型 对象名 = 对象值
Student student= new Student();//实例化
student.say();//对象名.方法
*/
形参和实参(实际参数的类型和形式参数的类型要一一对应!)
//非静态调用
package oop.demon01;
public class Demon03 {
public static void main(String[] args) {
//int ans=new Demon03().add(1,2);
Demon03 demon03=new Demon03();
int ans=demon03.add(1,2);
System.out.println(ans);// 3
}
// a,b 为形参
public int add(int a,int b){
return a+b;
}
}
//静态调用
package oop.demon01;
public class Demon03 {
public static void main(String[] args) {
int ans=Demon03.add(1,2);
System.out.println(ans);
}
// a,b 为形参
public static int add(int a,int b){
return a+b;
}
}
值传递和引用传递
package oop.demon01;
// 值传递
public class Demon04 {
public static void main(String[] args) {
int a = 1;
System.out.println(a); // 1
Demon04.change(a);
System.out.println(a); // 1
}
// 返回值为空 形参
public static void change(int a){
a=10;
}
}
package oop.demon01;
// 引用传递:传递一个对象,本质还是值传递
public class Demon05 {
public static void main(String[] args) {
Person person=new Person();
System.out.println(person.name);//null
Demon05.change(person);
System.out.println(person.name);//wentaotao
}
public static void change(Person person){
//person是一个对象:指向的---》Person person = new Person(); 这是一个具体的人,可以改变属性
person.name = "wentaotao";
}
}
// 定义了一个Person类,有一个属性:name
class Person{
String name;//nall
}
学习内容源自视频:b站狂神说Java
Java面向对象02——回顾方法(定义、调用)及加深的更多相关文章
- # 095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 03 封装总结 01 封装知识点总结
095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 02 static关键字(中)
092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现
088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现 本文知识点:Java封装的代码实现 说明:因为时间紧张,本人写博客过程中只 ...
- 094 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 04 static关键字(续)
094 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 01 static关键字(上)
091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 090 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 04 使用包进行类管理(2)——导入包
090 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 使用包进行类管理(1)——创建包
089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 中文乱码在java中URLEncoder.encode方法要调用两次解决
中文乱码在java中URLEncoder.encode方法要调用两次解决 一.场景: 1.我在客户端要通过get方式调用服务器端的url,将中文参数做utf-8编码,需要在js中两次的进行编码,服务器 ...
- 093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 03 static关键字(下)
093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
随机推荐
- 海量数据Excel报表利器——EasyExcel(开场篇)
EasyExcel 简介篇 互联网的精髓就是共享,可以共享技术.共享经验.共享情感.共享快乐~ 很多年前就有这个想法了,从事IT行业时间也不短了,应该把自己工作和业余所学习的东西记录并分享出来,和有缘 ...
- 二、JavaSE语言基础之常量与变量
1.常量 所谓常量值的是数据处理过程中值不能更改的数据. 2.变量 所谓变量值的是运算过程中值可以改变的数据,类似于代数中的未知数. 在Java语言中,使用变量时必须遵循先定义,而后赋值, ...
- 关于Android Studio Emulator常见使用问题
Q:模拟器无法初始化声音相关设备 Emulator: dsound: Could not initialize DirectSoundCapture Emulator: dsound: Reason: ...
- 【Linux】通过shell脚本对mysql的增删改查以及my.cnf的配置
目录 shell操作mysql 1.获取mysql默认密码 2.修改my.cnf文件 3.shell创建mysql数据库 4.shell创建mysql表 5.shell添加数据 6.shell删除数据 ...
- 6、基本数据类型(list)
6.1.列表: 1.li = [1, 12, 9, "age", ["孙子涵", ["19", 10], "张涵予"], ...
- 当VS和Flash builder同时运行时
1, 运行环境: windows 7, VS2010, Flash Builder 4.6 2, 在Flash Builder中运行工作空间和VS2010调试程序是同一个时,也就说在Flash ...
- 重新整理 .net core 实践篇————cookie 安全问题[三十八]
前言 简单整理一下cookie的跨站攻击,这个其实现在不常见,因为很多公司都明确声明不再用cookie存储重要信息,不过对于老站点还是有的. 正文 攻击原理: 这种攻击要达到3个条件: 用户访问了我们 ...
- 多元统计之因子分析模型及Python分析示例
1. 简介 因子分析是一种研究观测变量变动的共同原因和特殊原因, 从而达到简化变量结构目的的多元统计方法. 因子分析模型是主成分分析的推广, 也是利用降维的思想, 将复杂的原始变量归结为少数几个综合因 ...
- Docker:docker搭建redis6.0.8集群
下载redis镜像 #拉取镜像 docker pull redis:6.0.8 查看版本 #查看版本 docker inspect redis 生成redis.conf配置文件 #在 /home/re ...
- 严重:Exception sending context initialized event to listener instance of class [myJava.MyServletContextListener] java.lang.NullPointerException
以上错误是我在自定义Servlet监听器时遇到的,首先大致介绍一下我要实现的功能(本人刚开始学,如有错误,请多多指正): 为了统计网站访问量,防止服务器重启后,原访问次数被清零,因此自定义监听器类,实 ...