博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
类和对象
阅读量:7240 次
发布时间:2019-06-29

本文共 1768 字,大约阅读时间需要 5 分钟。

  1. 面向机器:   程序 = 数据 + 指令
  2. 面向过程:   程序 = 数据结构 + 算法
  3. 面向对象:   程序 = 对象 + 信息

 

类定义格式:

[ ]中的是选择性填入

[修饰符关键字] class 类名 [extends 父类名] [implements 接口列表]

{

//类体的内容

}

如果一个类没有继承那么会默认继承Object

所有的类都是Object的子类

[修饰符关键字]

public 公共可见

private 类可见

protected 包和所有的子类可见

default 包内可见

 

权限大小: public>protected>default>private

  1. 并不是每个修饰符都可以修饰类(指外部类),只有publicdefault可以。
  2. 所有修饰符都可以修饰成员变量,方法成员,构造方法。
  3. 为了代码安全起见,修饰符不要尽量使用权限大的,而是适用即可。比如,数据成员,如果没有特殊需要,尽可能用private.
  4. 修饰符修饰的是“被访问”的权限。

abstract 抽象的(只能被继承,不能被实例化)

final 不可变

static 静态的

 

 

类的主要成员:变量成员和方法

 

声明对象和创建对象

public class A(){

public static void main(String[] args){

Scanner sc;// 声明对象

sc = new Scanner(); // 创建对象

Sanner sc = new Scanner();//声明创建一起完成

}

}

 

 

 

变量成员的定义格式

[修饰关键字] 类型 变量名

 

 

 

方法成员的定义格式

返回类型就是函数返回值所属的数据类型。

[修饰关键字] 返回类型 方法名([类型 参数名, 类型 参数名])

{

}

public class Point{

  public static void main(String[] args){

  }

  int x,y;

  void setX(int x){//这时候有2x一个是变量x,一个是参数x

  this.x = x;//前缀没有this的是参数,加this的是类的变量

  }

  int getX(){

  return x;

  }

//y也同理设置

}

 

类的构造函数

空的构造函数

public class Point{

  int x,y;

  public static void main(String[] args){

  }

  public Point(){//空的构造函数,不写编译器会自动写入

  //构造函数不需要编写返回类型

  //构造函数名称必须和类名相同

  }

  public void Point(){ //这只是一个和类名同名的方法而已

  }

}

  

构造函数重载

public class Point{

  int x,y;

  public static void main(String[] args){

  }

  public Point(){//空的构造函数,不写编译器会自动写入

  //构造函数不需要编写返回类型

  //构造函数名称必须和类名相同

  }

  //对构造函数写了多个就叫构造函数重载

  Point(int x,int y){//也可以public Point(int x,int y)

  this.x = x;

  this.y = y;

  }

  public void Point(){ //这只是一个和类名同名的方法而已

  }

}

方法重载

public class Point{

  public static void main(String[] args){

  }

  int x,y;

  void setX(int x){

  this.x = x;

  }

  int getX(){

  return x;

  }

  //方法重载

  void setX(int x.int y){//方法重载,传入的参数必须和同方法的参数不同才行

  this.x = x;

  this.y = y;

}

 

转载于:https://www.cnblogs.com/weixiaobaoL/p/8660070.html

你可能感兴趣的文章
044 hive与mysql两种数据源之间的join
查看>>
Groovy动态解析
查看>>
ssh服务突然连接不了案例总结
查看>>
HDU 4745 Two Rabbits (2013杭州网络赛1008,最长回文子串)
查看>>
SQL 视图
查看>>
给asterisk1.8.7添加menuselct选项
查看>>
小白学数据分析----->在clementine基于两步聚类算法的次日留存分析探索
查看>>
01hibernate_first
查看>>
对LigerUI控件库进行扩展,自定义extend和override,并扩展事件前与事件后
查看>>
Tengine——安装起来真费劲
查看>>
关于Oracle过程,函数的经典例子及解析
查看>>
Android-PullToRefresh(一)
查看>>
JavaScript+XML+VBA导出报表初步构想
查看>>
UVA1452|LA4727-----Jump------经典的约瑟夫公式的变形(DP)
查看>>
Android SDK安装教程
查看>>
sourceinsight 相对路径设置
查看>>
mysql describe
查看>>
程序员的自我修养 学习笔记(5)
查看>>
DNS安全浅议、域名A记录(ANAME),MX记录,CNAME记录 专题
查看>>
数据字典生成工具之旅(9):多线程使用及介绍
查看>>