当前位置: 首页 > news >正文

网站做子页跳转到首页ps做网站原形

网站做子页跳转到首页,ps做网站原形,这么给网站做关键字,推荐wordpress主题xiu目录 1.面向对象初步认识 1.1什么是面向对象 1.2面向对象和面向过程的区别 2.类的定义和使用 2.1简单认识类 2.2类的定义格式 2.3类的实例化 2.4类和对象的说明 3.this关键字 3.1访问本类成员变量 3.2调用构造方法初始化成员变量 3.3this引用的特性 4.对象的构造以…目录 1.面向对象初步认识 1.1什么是面向对象 1.2面向对象和面向过程的区别 2.类的定义和使用 2.1简单认识类 2.2类的定义格式 2.3类的实例化 2.4类和对象的说明 3.this关键字 3.1访问本类成员变量 3.2调用构造方法初始化成员变量 3.3this引用的特性 4.对象的构造以及初始化 4.1就地初始化与默认初始化 4.2构造方法 4.2.1默认构造方法 4.2.2构造方法的特性 4.2.3构造方法中通过this调用其他构造方法 1.面向对象初步认识 1.1什么是面向对象 Java是一门纯面向对象的语言(Object Oriented Program简称OOP)在面向对象的世界里一切皆为对象。面向对象是解决问题的一种思想主要依靠对象之间的交互完成一件事情。用面向对象的思想来涉及程序更符合人们对事物的认知对于大型程序的设计、扩展以及维护都非常友好。 1.2面向对象和面向过程的区别 传统洗衣服 传统洗衣服注重的是面向过程也就是按照步骤一步一步实现少一个步骤都不行 每一种衣服鞋子清洗的方式都不同处理起来就比较麻烦 如果我们按这种方式去写代码后期对代码的扩展和维护就比较麻烦 现代洗衣服 现代洗衣服方式中总共有4个对象人衣服洗衣液洗衣机 洗衣服的过程人将衣服和洗衣液放进洗衣机启动洗衣机 在整个洗衣服的过程中人衣服洗衣液洗衣机这4个对象交互完成了洗衣服这件事而人并不需要关系衣服是怎么被搓干净和拧干净的 以面向对象方式来进行处理就不关注洗衣服的过程具体洗衣机是怎么来洗衣服如何来甩干的用户不用去关心只需要将衣服放进洗衣机倒入洗衣粉启动开关即可通过对象之间的交互来完成的。 注意面向过程和面相对象并不是一门语言而是解决问题的方法没有那个好坏之分都有其专门的应用场景。 2.类的定义和使用 2.1简单认识类 类是对一个实物对象的属性以及功能进行描述的 对比于现实生活中产品的说明书 在这个说明书里有产品的属性产品名称产品部件型号等等 产品的功能使用方法安装拆卸清洁 2.2类的定义格式 java中定义一个类需要用到class关键字 class ClassName{  //ClassName为类名field;       // 字段(属性) 或者 成员变量method;      // 行为 或者 成员方法 } 类中包含的内容称为类的成员。属性主要是用来描述类的称之为类的成员属性或者类成员变量。方法主要说明类 具有哪些功能称为类的成员方法。 定义一个洗衣机的类 class Washer{public String name; //名称public int size; //大小public String model; //型号public String color; //颜色public void function1(){ //洗衣功能System.out.println(洗衣功能); }public void function2(){ //脱水功能System.out.println(脱水功能); } } 在行业里类名一般采用大驼峰的命名规则 2.3类的实例化 类相当于一份说明书我们要完成某件事就需要一个这个类描述的实物来帮我们进行完成 当我们了解了这个类的功能和用途我们就需要“买”这个类对应的产品而“买”这个类对应的产品就叫类的实例化 用类类型创建对象的过程称为类的实例化在java中采用new关键字配合类名来实例化对象。 举例 创建一个洗衣机类的对象 类名 对象名new 类名; Washer washernew Washer();这样实例化一个对象washer就相当于我们买回来的那个产品了 注意事项 1.new 关键字用于创建一个对象的实例. 2.使用 . 来访问对象中的属性和方法. 3.同一个类可以创建对个实例 2.4类和对象的说明 1. 类只是一个模型一样的东西用来对一个实体进行描述限定了类有哪些成员. 2. 类是一种自定义的类型可以用来定义变量. 3. 一个类可以实例化出多个对象实例化出的对象 占用实际的物理空间存储类成员变量 4. 做个比方类实例化出对象就像现实中使用建筑设计图建造出房子类就像是设计图只设计出需要什么东 西但是并没有实体的建筑存在同样类也只是一个设计实例化出的对象才能实际存储数据占用物理空间 对比一下 3.this关键字 3.1访问本类成员变量 class Student{private String name;private int age;private String id;public Student(String name,int age,String id){namename;ageage;idid;}public void show(){System.out.println(我是name,今年age岁了,我的id是id);} }public class Test1 {public static void main(String[] args) {Student studentnew Student(小明,18,2024511);student.show();} } 先来看看这段代码它的输出结果 我相信你的第一反应应该是我是小明今年18岁了我的id是2024511 但输出结果是我是null今年0岁了我的id是null; 解释: 在这下面这段代码中 public Student(String name,int age,String id){namename;ageage;idid;} 我们认为左边的nameageid是成员变量但实际上在这段代码中左边的nameageid是局部变量此时局部变量给局部变赋值没有给成员变量赋值成员变量的值没有改变依然是默认值 然而当构造方法中的形参名和成员变量名不相同时就不会出现以上情况 class Student{private String name;private int age;private String id;public Student(String n,int a,String i){namen;agea;idi;}public void show(){System.out.println(我是name,今年age岁了,我的id是id);} }public class Test1 {public static void main(String[] args) {Student studentnew Student(小明,18,2024511);student.show();} 输出结果是我是小明,今年18岁了,我的id是2024511 想要解决形参名与成员变量名相同时给成员变量赋值的问题就需要使用this关键字this关键字表示本类中的成员变量和成员方法 public Student(String name,int age,String id){this.namename;this.ageage;this.idid;} 加上this就表示本类中的成员变量 在成员变量和局部变量重名时优先使用局部变量也就是就近原则。 3.2调用构造方法初始化成员变量 class Student{private String name;private int age;private String id;public Student(){this(haha,12,202451101);}public Student(String name,int age,String id){this.namename;this.ageage;this.idid;}public void show(){System.out.println(我是name,今年age岁了,我的id是id);} } 在不带参数的构造方法中初始化成员变量用this调用带三个参数的构造方法直接在this后面的括号中填写对应的参数就行 在构造方法中使用this调用其他构造方法对成员变量进行初始化时this语句必须放在该构造方法的第一行 3.3this引用的特性 1. this的类型对应类类型引用即哪个对象调用就是哪个对象的引用类型 2. this只能在成员方法中使用 3. 在成员方法中this只能引用当前对象不能再引用其他对象 4. this是“成员方法”第一个隐藏的参数编译器会自动传递在成员方法执行时编译器会负责将调用成员方法 对象的引用传递给该成员方法this负责来接收 在代码层面来简单演示---注意下图右侧中的Date类也是可以通过编译的 4.对象的构造以及初始化 4.1就地初始化与默认初始化 在Java方法内部定义一个局部变量时必须要初始化否则会编译失败。 public static void main(String[] args) {int a;System.out.println(a);} //运行结果java: 可能尚未初始化变量a 所以在创建局部变量时需要在使用变量之前对变量进行初始化 但是在创建类时对类进行实例化后调用成员变量时我们会发现编译器没有报错这是为什么呢 class Date{private int year;private int month;private int day; private String zodiac;public void setDate(int y, int m, int d) {year y;month m;day d;}public void show(){System.out.println(year:year month:month day: day zodiaczodiac);} }public class Test01 {public static void main(String[] args) {Date datenew Date();date.show();} } 这是因为我们在实例化对象时编译器默认的给我成员变量赋值了 当然我们不需要默认初始化的值可以就地初始化也就是创建类的时候就给成员变量赋值 class Date{private int year2024;private int month5;private int day12; } 4.2构造方法 构造方法(也称为构造器)是一个特殊的成员方法名字必须与类名相同在创建对象时由编译器自动调用并且在整个对象的生命周期内只调用一次。 4.2.1默认构造方法 class Date{private int year2024;private int month5;private int day12;// 构造方法// 名字与类名相同没有返回值类型设置为void也不行// 一般情况下使用public修饰// 在创建对象时由编译器自动调用并且在对象的生命周期内只调用一次public Date(int year, int month, int day) {this.year year;this.month month;this.day day;}public void show(){System.out.println(year:year month:month day: day);} } 当我们实例化对象时下面这样写会报错 这是为什么呢我们没写构造方法前是对的反而写了就错了。难道我们写的代码有问题 这是因为编译器有一个就穷不救急的性格当我们没有构造方法时他会提供一个默认的构造方法当我们写了构造方法他就不提供默认的构造方法了如果想使用默认的构造方法就必须自己在类里面写一个 public Date(){} 添加一个这样的类就行了方法体什么都不写 4.2.2构造方法的特性 1. 名字必须与类名相同 2. 没有返回值类型设置为void也不行 3. 创建对象时由编译器自动调用并且在对象的生命周期内只调用一次(相当于人的出生每个人只能出生一次) 4. 构造方法可以重载(用户根据自己的需求提供不同参数的构造方法) public Date(int year, int month, int day) {this.year year;this.month month;this.day day;}public Date(int year, int month) {this.year year;this.month month;} 上述两个构造方法名字相同参数列表不同因此构成了方法重载。 4.2.3构造方法中通过this调用其他构造方法 在构造方法中可以通过this调用其他构造方法来简化代码 public Date(int year, int month, int day) {this.year year;this.month month;this.day day;}public Date(int year, int month) {this.year year;this.month month;}public Date(){ this(1900,2,12);} 在构造方法中使用this调用其他构造方法时要注意在这个构造方法中方法的重载问题 public Date(){}public Date(){ this(1900,2,12);} 比如这样我们写的默认构造方法和this的构造方法形参一样编译器就会报错 注意 1.this在构造方法中必须是第一条语句 2.this调用其他构造方法时不能成环 public Date(){this(1900,1,1); }public Date(int year, int month, int day) {this(); } 无参构造器调用三个参数的构造器而三个参数构造器有调用无参的构造器形成构造器的递归调用 编译报错Error:(19, 12) java: 递归构造器调用
http://www.hkea.cn/news/14591908/

相关文章:

  • 扬州品牌网站设计给网站添加关键词
  • 网站所有权查询淄博网站设计公司
  • 阳泉营销型网站建设费用哈尔滨小程序制作公司
  • 高端网站建设创新上海网站建设联系电
  • 网站 linux 服务器配置wordpress源码导读
  • 网站建设的实训周万网域名查询ip
  • 网站如何建设推广seo整站排名
  • 两支队伍建设专题网站温州设计公司排名
  • 做二手平台公益的网站企业网站有哪些举几个例子
  • 网站开发需要花费昆明网站建设哪家最好
  • 网站开发过程说明怎么写媒体:多地新增感染趋势回落
  • 做电商看的网站有哪些内容购物网站开发费用
  • 哪里有做网站优化的公司本地黄页小程序
  • dedecms网站后台管理优化大师免费下载安装
  • 巨鹿网站制作分销系统app
  • 做网站工资多少搜索引擎优化有哪些要点
  • 韩城网站建设wordpress 别名排序
  • php构建网站如何开始网站开发不满意
  • 苏州企业建站公司深圳网页制作哪家好
  • 四川建设行业数据共享平台网站问题wordpress页面与文章不同的小工具
  • 垂直电商网站建设wordpress菜单文件导入
  • 做网站如何赚广费discuz做淘客网站
  • 怎么做网站二维码佛山制作网站公司哪家好
  • 竞价推广代理网站的seo方案怎么做
  • 做杂志的网站豪华网站设计
  • 哪些网站可以做养殖的广告新手小白怎么开网店
  • 信誉好的江苏网站建设wordpress 代码优化
  • 免费流量网站推广男女做污的网站
  • html5 metro风格网站苏州网站设计都选苏州聚尚网络
  • 做淘客网站怎么建要购买数据库吗徐州网站建设 徐州网站推广