java第四课,方法

方法:

为了提高代码的复用性,可以将其定义称一个单独的功能

是由修饰符,返回值,方法名,参数列表,方法体五部分组成。

1*无参无返回值:

public class Test {

//无参无返回值

public static void main(String[] args) {

Test t=new Test();

t.show();

}

public void show(){

System.out.println("酷酷的亮是最帅的");

}

}

2*无参带返回值

public class Test {

//无参带返回值

public static void main(String[] args) {

Test t=new Test();

int sum=t.su();

System.out.println("两数之和为:  "+sum);

}

public int su(){

int i=5;

int j=12;

int sum=i+j;

return sum;

}

}

3*有参无返回值

public class Test {

//有参数无返回值

public static void main(String[] args) {

Test t=new Test();

t.su(34,56);

}

public void su(int java,int html){

double avg=(java+html)/2.0;

System.out.println("平均分为: "+avg);

}

}

4*带参带返回值

import java.util.Arrays;

public class Test {

//有参数带返回值

public static void main(String[] args) {

Test t=new Test();

int[] scorse={79,53,98,81};

int count=t.sort(scorse);

System.out.println("共有"+count+"个成绩排名");

}

public int sort(int[] scorse){

Arrays.sort(scorse);

System.out.println(Arrays.toString(scorse));

return scorse.length;

}

}

//使用方法在同一个类中,要通过方法名进行调用。

//方法可以相互调用。

//在静态方法中调用外部方法,外部方法必须用static

//在静态方法中访问外部变量,也用static修饰

如果函数的返回值类型是void时,returan语句可以省略不写。

return的作用:结束函数。结束功能。

java中进行函数调用中传递参数时,遵循传递的原则;

基本类型数据传递的是该数据值本身。引用类型传递的是对对象的引用,而不是对象本身。’

方法的递归操作(斐波那契数列)

F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)

n>=2,n属于正整数;

求  F(5)的值?

方法的重载:

同一个类中包含了两个或两个以上 方法名相同,参数的个数  顺序或类型不同的方法,则称为方法的重载。

与方法的修饰符或返回值没有关系。

构造方法:

是定义在java中的一个用来初始化对象的方法,构造方法名与类名相同且没有返回值,

构造方法的重载: 方法名相同,但参数不同的多个方法;调用时会根据参数不同会调用相应的方法。

构造方法不但可以给对象的属性赋值,还可以保证给对象的属性赋一个合理的值。

所有对象创建时,都需要初始化才可以使用,具有针对性

构造器

默认构造器的特点:

*符合构造器的特点

*无参的

*无方法体

*一个类至少存在一个默认的构造器

*如果类A没有使用public修饰,则编译器创建的构造器也没有public修饰。使用了public修饰,则编译器创建的构造器也是使用public修饰

创建一个对象都在内存中做了什事情?

Person  p=new Person();

1,先将硬盘上指定位置的Person.class文件加载进内存。

2,执行main方法,在栈内存中开辟了mian方法的空间(压栈-进栈),然后在main方法的栈区分配一个变量p

3,在堆区内层中开辟一个实体空间,分配了一个内存首地址值 new

4,在该实体空间中进行属性的空间分配,并进行了默认初始化

5,对空间中的属性进行显示初始化。

6,进行实体的构造代码块初始化,

7,调用该实体对应的构造函数,进行构造函数初始化。

8,将首地址赋值给p,p变量就引用了该实体。(指向了该对象)

时间: 2024-10-06 04:37:04

java第四课,方法的相关文章

java基础-四种方法引用

实例 直接三角形,通过两边算第三边,目的是为了如何使用这几种方法引用.代码中多有些不合适,尽情原谅. 静态方法引用 接口的参数列表与类中的具体实现方法的参数列表一样,返回值一致. 调用 //静态引用 IStaticSide staticSide = Five::getStaticSize; staticSide.getStaticSize(3, 6); 类中定义 //静态引用 public static double getStaticSize(double s,double s2) { ret

(疯狂java)第四课

趁着周末玩爽了,兴致来了,继续玩玩java(估计再玩下去,就要被java玩了),第六章实在是很长,那就两个阶段来看吧. 1.java 7的增强包装类 这些包装类就是java上的基本类型,只不过人人基本都是C过来的,那么不可避免的有一些惯性的思维.除了int和char类型之外,其余的都是把首字母大写,我靠,这个有点太坑了吧,你哪怕都用JA打头也比这样强,一点特色都没有啊.为了让C语言的基本的类型和包装类之间能够好好的转化,java也很聪明的提供了一些默认的方法,比如xxxvalue()...,有一

Java 设计模式(四)-工厂方法模式 (FactoryMethod Pattern)

1     概念定义 1.1   定义 定义一个用于创建对象的接口,让子类决定实例化哪一个类.工厂方法使一个类的实例化延迟到其子类. 1.2   类型 创建类模式 2     原理特征 2.1   类图 2.2   优点 1)封装性良好,代码结构清晰 2)可拓展性高,只需修改一下工厂方法或拓展一个工厂类 3)屏蔽产品类,调用者不需要关心产品类的变化 4)高度解耦,高层模块只需知道产品抽象类,无需关注实现 2.3   缺点 代码复杂度增加 3     .应用拓展 3.1   应用场景 1)    

java第四课:数组

1.数组声明时,必须有中括号,但不指定数组的元素个数2.初始化时,必须指定元素个数3.数组元素内容仅能用于声明时初始化,不能用于赋值.如:char[] week; week={'1','2','3'};4.数组下标越界在运行时检查,编译时不管 未完待续....

java工程开发之图形化界面之(第四课)

本届中,我们将创建一个小应用程序,它使用循环生成其图案.我们将使用if语句和setColor方法.同时我们将介绍drawString方法,并使用它在小应用程序窗口中写出文本. 下面的小应用程序是显示一串七个面孔,我们下面来看看效果. 先贴上自己慢慢敲的一个小时的代码: 1 package 一个事例图形小应用程序; 2 import javax.swing.JApplet; 3 import java.awt.*; 4 import java.awt.Color; 5 import java.aw

java中定时器的四种方法

1 package com.lid; 2 3 import java.util.Calendar; 4 import java.util.Date; 5 import java.util.Timer; 6 import java.util.TimerTask; 7 8 public class Test { 9 public static void main(String[] args) { 10 //timer1(); 11 timer2(); 12 //timer3(); 13 //time

【转】Java中字符串中子串的查找共有四种方法(indexof())

原文网址:http://wfly2004.blog.163.com/blog/static/1176427201032692927349/ Java中字符串中子串的查找共有四种方法,如下:1.int indexOf(String str) :返回第一次出现的指定子字符串在此字符串中的索引. 2.int indexOf(String str, int startIndex):从指定的索引处开始,返回第一次出现的指定子字符串在此字符串中的索引. 3.int lastIndexOf(String st

JAVA实现单例模式的四种方法和一些特点

JAVA实现单例模式的四种方法和一些特点,需要的朋友可以参考一下 一.饿汉式单例类 复制代码 代码如下: public class Singleton  {      private Singleton(){ } private static Singleton instance = new Singleton(); private static Singleton getInstance(){          return instance;      }  } 特点:饿汉式提前实例化,没有

两个变量交换的四种方法(Java)

对于两种变量的交换,我发现四种方法,下面我用Java来演示一下. 1.利用第三个变量交换数值,简单的方法. (代码演示一下) class TestEV//创建一个类{ public static void main(String[]args) { int x =5,y=10; //定义两个变量 int temp = x; //定义第三临时变量temp并提取x值 x = y; //把y的值赋给x y = temp; //然后把临时变量temp值赋给y System.out.println("x=&