java新手笔记17 参数

package com.yfs.javase;

public class ParamDemo {

	public static void main(String[] args) {
		int a = 3, b = 5;
		change(a,b);
		System.out.println("a = " + a  + "  b = " + b);

		Point p = new Point();
		p.x = 10;
		p.y = 20;
		change(p);

		System.out.println("p.x = " + p.x  + "  p.y = " + p.y);

	}

	public static void change(Point p) {//引用指向  是对象
		int c = p.x;
		p.x = p.y;
		p.y = c;

	}

	public static  void change(int a, int b) {//局部变量  传入是数值
		System.out.println("================");
		System.out.println("||||||  a = " + a  + "  b = " + b +"||||||");

		int c = a;
		a = b;
		b = c;
		System.out.println("||||||  a = " + a  + "  b = " + b +"||||||");
		System.out.println("================");
	}

}

class Point {
	int x;
	int y;
}

1.Person

package com.yfs.javase;

public class Person {

	public Person() {
		System.out.println("javase.Person  ***");
	}
}

2. other Person

package com.yfs.javase.other;

public class Person {

	public Person() {
		System.out.println("other.Person 对象...");
	}

}

3.Person 测试

package com.yfs.javase.other;

import com.yfs.javase.Person;

public class PersonTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Person p1 = new Person();

		com.yfs.javase.other.Person p2 = new com.yfs.javase.other.Person();

	}

}

4.default

package com.yfs.javase.other;

 class DefaultDemo {

}

  class Other {

  }

  /*public*/ class Demo {

  }

5.公有类

package com.yfs.javase.other;
//一个java文件只能有一个public 修饰的类
// 类与文件同名
public /*final*/ class PublicClass {
	private String name;
	public int age;
	protected char sex;
	int score ;
	static final int id ;//= 520;//只有一份 所有对象共享
	static {
		id = 200;
	}
	public PublicClass() {
		//id = 100;
	}
	//方法的权限
	public final void publicMethod() {
		//id = 350;
	}

	private void privateMethod() {
		protectedMethod();
	}

	protected void protectedMethod() {

	}

	/*default*/ void defaultMethod() {
		protectedMethod();
	}
}

/*default  public*/ class DefaultClass {

}

6.测试

package com.yfs.javase.other;
//同一包下
public class AccessTest1 {

	public static void main(String[] args) {
		PublicClass pc = new PublicClass();
		pc.publicMethod();
		//pc.privateMethod();私有方法不能访问
		pc.protectedMethod();
		pc.defaultMethod();
	    pc.age = 20;
	    pc.score = 90;

	}

}

7.包外测试

package com.yfs.javase;

import com.yfs.javase.other.PublicClass;

//不同包下
public class AccessTest2 {

	public static void main(String[] args) {
		PublicClass pc = new PublicClass();
		pc.publicMethod();
		//pc.privateMethod();私有方法不能访问
		//pc.protectedMethod();protected方法不能访问
		//pc.defaultMethod();defautl方法不能访问

	}

}

class Child  extends PublicClass {

	public void test () {
		//privateMethod();
		protectedMethod();//子类可以访问
		//defaultMethod();//不同包不能访问
	}
//	@Override
//	public final void publicMethod() {
//		// TODO Auto-generated method stub
//
//	}
}
时间: 2024-07-30 19:26:06

java新手笔记17 参数的相关文章

我的java学习笔记(17)关于内部类(part 2)

1.内部类是一种编译器现象,与虚拟机无关.编译器将会把内部类翻译成用$ 分隔外部类名与内部类的常规文件,而虚拟机则对此一无所知. 2.内部类拥有访问特权,所以与常规类比起来功能更加强大. 3.有时候一个类只在一个方法中使用一次,我们可以定义这个类为局部类. public void start() { class TimePrinter implements ActionListener { public void actionPerformed(ActionEvent event) { Date

java新手笔记10 构造器

1.摇奖小程序 package com.yfs.javase; import java.io.IOException; import java.nio.CharBuffer; import java.util.Random; public class Demo1 { /** * 模拟摇奖 */ public static void main(String[] args) { Random ran = new Random(); int[] a = new int[7]; System.out.p

java新手笔记9

1.bank类 package com.yfs.javase; //类封装 public class BankCard { //属性 int balance;//默认0 实例变量 分配给每个对象一个 //String name; // 方法 存钱 public void saveMoney(int money) { if(money < 0) { System.out.println("非法操作..."); return; } System.out.println("向

java新手笔记23 异常

1.import package com.yfs.javase; import java.util.Scanner; //import java.lang.String;//默认导入 public class Demo1 { public static void main(String[] args) { String s = new String("abc");//java.lang.String String s1 = "abc"; System.out.pri

java新手笔记8

1.main函数 public class MainParam { //考察main 方法的参数 args //运行时可以传入参数 参数类型 String public static void main(String[] args) { for(int i = 0; i < args.length; i++ ) { System.out.println(i + " -> " + args[i]); } } } 2.包 //给自定义类添加包名 生成对应的目录 包名是类名的部分

java新手笔记5

1.进制转换 /* 企业发放的奖金根据利润提成. 利润(I)低于或等于10万元时,奖金可提10%: 利润高于10万元,低于20万元时, 低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%: 20万到40万之间时,高于20万元的部分,可提成5%: 40万到60万之间时高于40万元的部分,可提成3%: 60万到100万之间时,高于60万元的部分,可提成1.5%, 高于100万元时,超过100万元的部分按1%提成, 从键盘输入当月利润I,求应发放奖金总数? */ import java

java新手笔记33 多线程、客户端、服务器

1.Mouse package com.yfs.javase; public class Mouse { private int index = 1; private boolean isLive = false; //跳出方法 同步锁 public synchronized void jump() { while(true) { if(!isLive ) { System.out.println("跳出第 " + index + " 田鼠"); //修改田鼠状态

Java学习笔记17

Object类是所有类.数组.枚举类的父类,是类层次结构的根类.每个类都使用Object作为超类.所有对象(包括 数组)都实现这个类的方法. Object类实现了以下方法: 我们来看看关于finalize()方法在源码中是如何定义的: protected void finalize() throws Throwable { } 关于此方法的说明: 当系统中没有引用变量引用到该对象时,垃圾回收器调用此方法来清理该对象的资源. finalize 的常规协定是:当 JavaTM 虚拟机已确定尚未终止的

java新手笔记34 连接数据库

1.JdbcUtil package com.yfs.javase.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class JdbcUtil { private static final String driver = "sun.j