Java常见操作

1 交换两个变量的操作

 eg.  public static void main(String[] args) {
		int m=10;
		int n=20;
		System.out.println("m="+m+",n="+n);
		//交换两个变量的值的操作
		int temp=m;
		m=n;
		n=temp;
	}
}

2 交换数组中指定两个位置元素的值

publuc void swap(int[]arr,int i,int j) {
		int temp=arr[i];
		arr[i]=arr[j];
		arr[j]=temp;
		swap(arr,j,j+1);  //交换两个数的位置 这句在for循环句的下面

3 javabean(java语言写成的可重用组件)  里面的get  ,set方法

public void setSex() {           get  方法----取得属性
	   this.sex=sex;              set方法----设置属性
   }                                          在main方法里面调用后输出
   public int getSex() {
	   return this.sex;
   }
public static void main(String[] args) {
	   Person2 p8=new Person2();    //main方法里面new对象
	     p8.setAge(36);
           System.out.println( p8.getAge());

4 一维数组的访问  int[  ]x=new int[10];

1.面向过程(POP):强调的是功能行为,以函数为最小单位,考虑怎样做
面向对象(OOP) 将功能封装进对象,强调具备了功能的对象,以 类/对象为最小单位,考虑谁来做
类与对象是面向对象的核心
2.类与对象的使用,(面向对象思想落地的实现)
 *   1.创建类 设计类的成员
 *   2.创建类的对象 ---new 的方法
 *   3.通过  对象.属性  或  对象.方法  调用对象的结构

5.对象的创建和使用 :内存解析

堆 此内存区域的唯一目的就是存放对象实例
   栈  这里指虚拟机栈,虚拟机用于存储局部变量  方法执行完后自动释放
   方法区 用于存储已被虚拟机加载的类信息,常量,静态变量,即时编译后的代码等数据

6 属性(成员变量)VS局部变量

* 1 相同点
 *  定义变量的格式  数据类型 变量名=变量值
 *  先声明,后使用
 *  变量都有其对应的作用域
 *  2 不同点
 *  在类中的声明位置的不同
 *  属性 :直接定义在类的一对{}内
 *  局部变量 声明在方法内,方法形参,代码块内,构造器形参,构造器内部的变量
 放在类里面 成员变量    放在 方法里面--局部变量

7 Java 规定的四种权限修饰符

   private public 缺省 privated

8  返回值类型  有返回值vs没有返回值

   ① 如果方法有返回值,则必须在方法声明时指定返回值类型,同时,方法中,需要使用 return 关键字来返回指定类型的变量或常量
   ② 如果方法没有返回值,则方法声明时,用void来表示,通常没有返回值的方法中,就不能使用 return 但是,如果使用的话,只能“return"表达结束此方法的意思

return后不可声明表达式

9关于权限修饰符的不同

* 属性:可以在声明属性时,指明其权限,使用权限修饰符
 * 常用权限修饰符: private, public,缺省, protected
 * 权限 体现了结构被调用时权限可见性的大小
 * 目前,大家声明属性时,都使用缺省就可以了
 * 局部变量,不可以使用权限修饰符

10 默认初始化值

             * 属性 类的属性,根据其类型,都有默认初始化值
	 * 局部变量没有初始化值  
	 * 意味着,我们在调用局部变量之前,一定要显式赋值
	 * 形参在调用时,我们赋值即可

11 在内存中加载的位置

* 属性 加载到堆里面
 * 局部变量 加载到栈空间

12 return 关键字的作用

1。使用范围,使用在方法体中
2.作用:1)结束方法
        2)针对于有返回值类型的方法,使用”return 数据“方法返回所要的数据
注意点 :return 关键字后面不可以声明执行语句、

13 类中方法的声明与使用

 * public String getNation(String nation)	{}
 * public void eat() {}  void 没有返回值
 * public void sleep(int hour) {}
 * public String getName() {}

方法的声明,权限修饰符,返回值类型,方法名(形参列表) { 
      方法体 }
方法名属于标识符,遵循标识符的规则和规范 ”见名知意“
1.方法:(描述类应该具有的功能)
 
是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集
方法 --先创建,再使用
        方法调用--创建后手动使用后执行
方法的使用中,可以调用当前类的属性或方法
    特殊的,方法A中又调用了方法A:递归方法
    方法中,不可以定义方法

tips:

如果在 Java 程序中有多个类,经编译之后便会产生与类相等数目的 .class 文件
当程序运行到调用方法语句时,程序会暂停跳到该方法中运行,等该方法运行结束后,才又返回到主方法 main( ) 中继续往下运行
主方法 main( )内如果需要访问类

void area()
	 * {System.out.println("底面积="+pi*radius*radius);} 定义无返回值的方法 area(),计算面积
	 * double volume()
	 * {  return(pi*radius*radius)*height; }定义返回值为double型的方法 volume(),计算体积

14 参数的传递

当方法不需要传递任何参数时,方法的括号内什么也不写
调用方法并传递参数时,参数其实就是方法的自变量,所有参数要放在方法的括号内来进行传递
括号内的参数可以是数值型,字符串型,甚至是对象

      //int area=text.method();      //text.method()  调用对象     int area= 接收方法
		//System.out.println("矩形的面积="+area);   //计算最终结果  计算面积方法1
		
		System.out.println(text.method());  //计算面积方法2

15 面向对象思想编程内容的三条主线分别是什么(大处着眼)

1)类及类的成员:属性,方法,构造器,代码块,内部类
2)面向对象的三大特征:封装 ,继承,多态
3)其他关键字:this super, abstract ,interface ,static ,final ,package ,import

16谈谈你对面向对象中类与对象的理解,并指出二者的关系

类:抽象的,概念上的内容
对象:实实在在存在的个体,new 出来的在内存占据一定空间
两者的关系
对象是由类派生出来的(new 出来的)

17类和对象创建与操作的三步

1.创建类
2类的实体化
3.调用对象的结构:对象 属性     对象 方法
类的方法内是否可以定义变量?是否可以调用属性?是否可以定义方法?是否可以调用方法?
                     是          是                否                是

说明

如果创建了·一个类的多个对象,则每个对象都独立的拥有一套类的属性。(非 static的)
意味着:如果我们修改了一个对象的属性 a,则不影响另外一个对象属性a的值

18内存解析

虚拟机栈 即为平时提到的栈结构,我们将局部变量存储在栈结构中
堆 将 new 出来的结构(数组 对象)加载在堆空间中
方法区 类的加载区 常量池 静态域

19 匿名对象的使用

1 理解 我们创建对象时,没有显式的赋给一个变量名,
2.匿名对象只能调用一次
当一个对象被创建之后,在调用该对象的方法时,也可以不定义对象的引用变量,而直接调用这个对象的方法,这样的对象叫做匿名对象

Cylinder volu=new Cylinder(  );
volu.setCylinder(2.5 ,5, 3.14 );
可改写为  new Cylinder(  ).setCylinder(2.5 ,  5 , 3.14 );

20方法的重载

重载的概念 (“两同一不同”同一个类,相同方法名,参数列表不同--参数个数不同,参数类型不同)
在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可
重载的特点
与返回值类型无关,只有参数列表,参数个数或参数类型)调用时,根据方法参数的不同来区别

21可变个数形参的方法

* Jdk5.0新增内容
 * 具体使用
 * 1.可变个数形参的格式    方法通过对象来调  main  
 * 2. 当调用可变个数形参的方法时,传入的参数个数可以是0个 1个 2个 甚至多个
 * 3.可变个数形参的方法与本类中方法名相同,形参不同的方法之间构成重载 可以共存
 * 4。可变个数形参的方法与本类中方法名相同,形参类型也相同的数组之间不构成重载,换句话说,不能共存
 * 5.可变个数形参在方法的形参中,必须声明在末尾
 * 6.可变个数形参在方法的形参中,最多只能声明一个可变形参

21.1方法形参的传递机制,值传递

* 1形参 方法定义时声明的小括号内的参数
 * 实参 方法调用时,实际传递给形参的数据 
 * 2.值传递机制的描述
 * 如果参数是基本数据类型,此时实参赋给形参的是,实参真实存储的数据值
 * 如果参数是引用数据类型,此时实参赋给形参的是实参存储数据的地址值

22构造方法  (特殊的与类相同的方法) 专门用于在创建对象时,完成初始化工作

定义构造方法时若加了“ void "修饰符,则这个方法就不再被自动调用
构造方法没有返回值,因为一个类的构造方法的返回值类型就是该类本身
构造方法特殊性的体现
1)   构造方法的方法名与类名相同
2}  构造方法没有返回值,但不能写 void
3)  构造方法的主要作用是完全对类对象的初始化工作
4) 构造方法一般不能由编程人员显式地直接调用,而是用 new来调用
5) 在创建一个类的对象的同时,系统会自动调用该类的构造方法为新对象初始化

23类与对象的使用,(面向对象思想落地的实现)

*  1.创建类 设计类的成员  class....
 *  2.创建类的对象 ---new 的方法   public..主类 new方法   输出
 *  3.通过  对象.属性  或  对象.方法  调用对象的结构     void area()方法

	 * {System.out.println("底面积="+pi*radius*radius);} 定义无返回值的方法 area(),计算面积
	 * double volume()
	 * {  return(pi*radius*radius)*height; }定义返回值为double型的方法 volume(),计算体积
posted @ 2023-05-15 09:01  婷宝_知萌  阅读(19)  评论(0编辑  收藏  举报