zoukankan      html  css  js  c++  java
  • 2020.7.16

    学习内容:

    1.方法重载 

    同一个类中的两个或两个以上的方法可以有同一个名字,只要它们的参数声明不同即可,这种情况下,该方法就被称为重载

    每个重载方法参数的类型和数量必须是不同的,不同主要体现在以下方面

    1. 方法的参数类型相同,个数不同
    2. 方法的参数个数相同,类型不同

    当Java调用一个重载方法时,参数与调用参数匹配的方法被执行

     注意:重载只跟方法的参数类型和个数有关,跟方法的返回值没有关系

    2.方法的调用 

    调用非静态方法

    非静态方法就是没有 static 修饰的方法,对于非静态方法的调用,是通过对象来调用的

     1 package day01;
     2 public class InvokeMethod{
     3     public static void main(String[] args) {
     4     InvokeMethod in =new InvokeMethod();
     5             in.t1();
     6 }
     7     public void t1() {
     8         System.out.println("t1");
     9     }
    10     }    

    调用静态方法

    静态方法就是用static修饰的方法,静态方法的调用是通过类名来调用的

    1 package day01;
    2 public class InvokeMethod{
    3     public static void main(String[] args) {
    4     InvokeMethod.t2();
    5 }
    6     public static void t2() {
    7         System.out.println("static t2...");
    8     }
    9     }    

    方法与方法之间的调用

    方法与方法之间的调用,只要是在一个方法内部如何调用其他方法

    (1)静态方法内部调用其他方法

    • 静态方法调用静态方法

    在本类中

    静态方法可以直接调用静态方法

    除了在 main 方法中,还可以在自定义的静态方法中直接调用

     1 package day01;
     2 public class InvokeMethod{
     3     public static void main(String[] args) {
     4     }
     5     public static void t2() {
     6         t2();
     7         System.out.println("static t2");
     8         }
     9     public static void t1() {
    10         t2();
    11         System.out.println("static t1");
    12     }
    13     }    

    不在一个类当中

    • 静态方法调用非静态方法

    在本类中

     不在同一个类当中

     1 package day01;
     2 public class InvokeMethod{
     3     public static void main(String[] args) {
     4     }
     5     public static void t() {
     6         B b= new B();
     7         b.t();
     8 
     9         System.out.println("demo tttttttt");
    10         }
    11 }
    12 class B{
    13     public void t() {
    14         System.out.println("t...");
    15     }
    16     }    

    (2)非静态方法内部调用其他方法

    • 非静态方法调用静态方法

    在本类中

    在本类中,非静态方法可以直接调用静态方法

    不在同一个类中

    在不同类中,非静态方法调用其他类中的静态方法,需要导入该类中的包。并且需要通过类名来调用

     1 package day01;
     2 public class MethodDemo{
     3     public static void main(String[] args) {
     4     }
     5     public void t1() {
     6         C.t2();
     7     }
     8 class C{
     9     public  static void t2() {
    10         System.out.println("t2...");
    11     }
    12 }
    • 非静态方法调用非静态方法

    在本类中

    在本类中,非静态方法可以直接调用静态方法

    不在同一个类中

    在不同类中,非静态方法调用其它类中的非静态方法,需要导入该类中的包,并且需要通过对象来调用

    遇到的问题:

    怎么导入包?

    https://www.cnblogs.com/mengdd/archive/2012/12/27/2836412.html

    https://zhidao.baidu.com/question/513033182.html

    明天要学习的内容:

    方法参数及其传递问题、方法递归、类的属性

  • 相关阅读:
    Event事件的兼容性
    学会使用Google代码搜索
    event.srcElement怎么取得tr的title值及怎么利用样式编辑blogs
    Mac下MyEclipse配置Tomcat的方法
    Mac 下配置Tomcat7
    myEclipse导入现成项目出现错误
    Android——padding/margin/layout_alignParentRight详解
    Mac系统下Eclipse安装前端开发各类插件
    MyEclipse导入现成项目后报Target runtime Apache Tomcat v6.0 is not defined. 错误的解决办法
    Mac下配置PHP+MySql环境
  • 原文地址:https://www.cnblogs.com/ltw222/p/13380677.html
Copyright © 2011-2022 走看看