方法的所属性:
  从语法的角度来看:方法必须定义在类中

  方法要么属于类本身(static修饰),要么属于实例 -- 到底是属于类还是属于对象? 有无static修饰

  调用方法时:必须有主调对象(主语,调用者)

 public class MathTest{
public static void main(String[] args){
System.out.println(Math.sin(1.57));
System.out.println(Math.sin(Math.PI/2));
}
}
 public class TestMethod {
String name; //自定义带参数的构造器后,系统不会再为类提供无参构造器
//注意:若程序员没有构造器,系统默认会为类提供一个无参构造器
public TestMethod(String name){
this.name = name;
} public void walk(){
System.out.println(this.name + "在走路");
} public void run(){
//TestMethod t = new TestMethod("老A");
//t.walk();
//方法中看不出this代表谁,谁调用它就代表谁,这里是tt调用run的,所以this代表tt
this.walk();
System.out.println(this.name + "在跑步");
} public static void main(String[] args) {
TestMethod tt = new TestMethod("老C");
tt.run();
}
}

方法值传递:

  Java方法的参数传递机制:"值传递/副本传递",它并不会把方法中的值传递过去,而是通过副本的形式传递的

  形参个数可变的方法:type... 形参名

 class TestArgs {
public void age(int age) {
System.out.println("a的年龄为:" +age);
} //int... 表示可以传入多个int类型的参数
public void test(int... ages){
//在该方法中ages 相当于一个数组
for(int ag : ages){
System.out.println("b的年龄为:" + ag);
}
} public static void main(String[] args) {
//定义一个ta变量指向TestArgs实例,因为类中方法都是实例方法,所以必须创建实例才能调用
TestArgs ta = new TestArgs();
ta.age(22);
System.out.println("~~~~~~~~~~~~~~~~~~~~~");
ta.test(10,20,11,23,55,19,44,68);
}
}

注意:

  A、每个方法最多只能有一个形参个数可变的参数public void test(int... nums,String... name)×
  B、形参个数可变的参数必须位于最后
    public void test(int... nums,String name) ×
    public void test(String name,int... nums) √

疯狂java学习笔记之面向对象(三) - 方法所属性和值传递的更多相关文章

  1. 疯狂java学习笔记之面向对象(一) - 定义类、方法、构造器

    Java面向对象 1.定义类 2.创建对象.调用方法 类和对象: 某一类对象的概念定义. 比如:人类 - 抽象出来的概念(不特指某个人) 对象 - 在类的概念下产生的一个实例,它就是一个对象了. ja ...

  2. 疯狂java学习笔记之面向对象(六) - 构造器重载、方法重载和方法重写

    一.方法重载(Overload): Java允许同一个类中定义多个同名方法,只要形参不一样就可以,如果同一个类中包含了两个或两个以上方法名相同的方法,但形参列表不同,则被成为方法重载(两同一异). 同 ...

  3. 疯狂java学习笔记之面向对象(八) - static和final

    一.static: 1.static是一个标识符: - 有static修饰的成员表明该成员是属于类的; - 没有static修饰的成员表明该成员是属于实例/对象的. 2.static修饰的成员(Fie ...

  4. 疯狂java学习笔记之面向对象(五) - 封装、继承、多态

    一.封装: 封装的概念: - 合理的隐藏:隐藏不想被外界操作的Field.方法.构造器 - 合理的暴露:一般就是希望给别人调用的方法 e.g:显示器(按键暴露出来操作,但实际的东西/细节方法被隐藏起来 ...

  5. 疯狂java学习笔记之面向对象(九) - 抽象和接口

    一.抽象(abstract): 1.抽象类: 使用abstract修饰的类就是抽象类; 相比于普通类抽象类增加了支持抽象方法的功能,但也丢失了创建实例的功能(抽象类中不能创建实例),其他普通类有的抽象 ...

  6. 疯狂java学习笔记之面向对象(四) - this关键字

    Java中this关键字主要有以下两个方法: 1.this引用 - 可用于任何非static修饰的方法和构造器中,当this用于方法中时,它代表调用该方法的实例/对象;当this用于构造器中时,它代表 ...

  7. 疯狂java学习笔记之面向对象(二) - 成员变量与局部变量

    Java变量按其作用域可分为:成员变量和局部变量.注意:在Java中是没有全局变量这个概念的 一.成员变量: 成员变量是在类中定义的变量,具体可分为类变量与实例变量--有无static修饰 实例变量的 ...

  8. 疯狂java学习笔记之面向对象(七) - super关键字

    super有以下两大作用: 1.起限定作用:强制去访问父类的成员(Field.方法) 2.起调用作用:指定/显示调用父类的某个构造器 super调用规则: 1.子类构造器总会调用父类构造器一次,默认情 ...

  9. Java学习笔记之---面向对象

    Java学习笔记之---面向对象 (一)封装 (1)封装的优点 良好的封装能够减少耦合. 类内部的结构可以自由修改. 可以对成员变量进行更精确的控制. 隐藏信息,实现细节. (2)实现封装的步骤 1. ...

随机推荐

  1. September 22nd 2016 Week 39th Thursday

    Things won are done, the soul of joy lies in the doing. 得到即是完结,快乐的精髓在于过程. Things won are done, thing ...

  2. 立方体旋转 【web前端学习部落22群120342833】

    效果: HTML部分: <body class="body"> <div class="rect-wrap">   <!-- // ...

  3. 模拟赛1102d1

    炮(cannon)[题目描述]众所周知,双炮叠叠将是中国象棋中很厉害的一招必杀技.炮吃子时必须隔一个棋子跳吃,即俗称"炮打隔子". 炮跟炮显然不能在一起打起来,于是rly一天借来了 ...

  4. Linear regression with one variable算法实例讲解(绘制图像,cost_Function ,Gradient Desent, 拟合曲线, 轮廓图绘制)_矩阵操作

    %测试数据 'ex1data1.txt', 第一列为 population of City in 10,000s, 第二列为 Profit in $10,000s 1 6.1101,17.592 5. ...

  5. 面向对象的小demo

    两个类如下 package cao.com.duixiang; import java.util.Arrays; public class OtherTest { //求max public int ...

  6. Git - 使用指南

    GIT (分布式版本控制系统) 编辑 Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目.[1]  Git的读音为/gɪt/. Git是一个开源的分布式版本控制系统,可以 ...

  7. Python读取xml报错解析--ExpatError: not well-formed (invalid token)

    xml文件内容如代码所示存入的名字为login.xml: <?xml version="1.0" encoding="utf-8"?> <in ...

  8. Bootstrap – 1.认识

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  9. Swing布局基础

    虽然很简单,但还是记录一下,以备复查. 1.BorderLayout ,这是JFrame的默认布局方式,基于此的新组件,例如BUTTON,可以放在东西南北中的某一个位置,如果不指定,则默认是中央.中央 ...

  10. apache lucene solr 官网历史版本下载地址

    官网上一般只提供最新版本的下载,下面两个链接为所有历史版本的下载地址: lucene地址:archive.apache.org/dist/lucene/java/ solr地址:archive.apa ...