一个星期的知识总结

原创 2018年04月16日 10:32:33

<script><script>

<!--

loopy()

function loopy(){

var sWord=""

while (sWord !="12345678"){

sWord=prompt("请在下面框中输入密码进入博客文本")

}

alert("AH....欢迎光临!")

}

//-->

</script>

这是我第一次接触博客,同时也是我第一次写关于知识总结,要养成学会总结知识的好习惯,因为一个好的习惯决定了是否成功。

学习Java也有一个多月了同时我也有一定的认识。Java是一种高级计算机语言,它可以编写跨平台应用软件,完全面向对象的程序设计语言。

Java程序都是由类所组成的,类的概念的产生是为了让程序语言能更清楚地表达出现实事物的本性,而类是创建对象的模板。

例如定义格式:

Class 类名{

类的属性;

类的方法(){

}

}

正因为它简单易用,安全可靠。所以Java技术可谓是无处不在.

        其中,我要说的是Java中相对重要的特点之一-----“面向对象”。面向对象是一种符合人类思维习惯的编程思维,在程序中使用对象来影射现实中的事物。当然了,提到面向对象,我们自然就会想起面向过程,面向过程就是分析出解决问题所需的步骤,然后用函数把步骤一一实现,使用时就可以依次调用就。可见这两个还是有一定的不同之处。当运用程序功能发生改变的时候,只需修改个别的对象就可以,从而使面向对象可以使代码更容易得到维护。面向对象的思想中核心的就是对象,对象是一种事物的具体表现,是具体存在的个体。在创建对象之前需要定于一个类,而类是一组相关的属性和行为的集合,是一个抽象的概念。类中可以定义成员变量和成员方法,其中:成员变量可以用于描述对象的特征,也被称作属性,成员方法用于描述对象的行为,被称为方法。

例如:    class person{

Int age;

Void speak(){

System.out.println(“大家好,我今年” +age + “岁了。”);

}

}

对象是通过类创建出来的,因此在程序设计中重要是类的设计,以此同时还需要对类进行封装,所谓类的封装是指再定义一个类时,将类中的属性私有化,只能在类中才可以访问,是面向对象的核心思想,是不允许外界随意访问,如果要想让外界进行访问就应该使用一些public 修饰的公有方法,当然了,其中包括用于获取属性值的getXxx方法和设置属性值的setXxx。而在此期间对修饰私有属性的private关键字不是很明白。经过一番查询后的知private是一个权限修饰符,可以修饰成员(成员变量和成员方法),而被private修饰的成员只在本类中才能访问,往往修饰变量。

接下通过案例来实现类的封装:

class student {
private String name;     //将name进行私有化
private int age;        //将age进行私有化


public String getName() {
return name;
}


public void setName(String stuName) {
name = stuName;
}


public int getAge() {
return age;
}
public void setAge(int stuAge) {    //下面是对传入的参数检查
if (stuAge <= 0) {
System.out.println("你输入的年龄不合格。");
} else {
age = stuAge;    //对属性赋值
}
}
public void introduce() {
System.out.println("大家好,我叫" + name + ",我今年" + age + "岁。");
}

}

public class ave1 {
/**
* @param args
*/
public static void main(String[] args) {

// TODO Auto-generated method stub

student p = new student();
p.setAge(-2);
p.setName("李三");
p.introduce();
}
}

在此类中使用了private关键字将属性name和age声明为私有,对外界提供了几个公有的方法,剩下的就不必多说了吧。

   Java经常会提供一些关键字来指代当前对象,用于在方法中访问对象的其他成员。比如this关键字,它可以明确地去访问一个类的成员变量,解决与局部变量名称冲突问题,可以用来调节成员方法,构造方法是在实例化对象时被Java虚拟机自动调用,在程序中不能像调用其他方法一样去调用构造方法,但可以在一个构造方法中使用“this([参数1,参数2...])“的形式来调用构造方法。而在使用this关键字是应该注意以下的几点。

(1)   只能在构造方法中使用this调用其它的构造方法。

(2)   在构造方法中,使用this调用构造方法的语句必须放在第一位,且只能出现一次,下面的写法是错误的。

public person{
public void person(){
String name = "小明";
this (name);    //调有参数的构造方法,由于不在第一行,所以编译错误!
}

}

(3)   不能在一个类中的两个构造方法中使用this互相调用,下面的写法编译会报错!

class person{

public void person(){
this("小韩");    //调用有参的结构方法
System.out.println("无参的方法被调用....");
}
public void person(String name){
this ();    //调有参数的构造方法。
System.out.println("有参的方法被调用....");
}
}

   在面向对象的特点中不止有封装性,还有继承性和多态性。所谓的继承一般指的是子女继承父辈的财产,而在程序中,是描述的是事物之间的所属关系,通过继承可以是多种事物之间形成一种关系体系,而类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的新类被称作子类,子类会自动拥有父类所有可继承的属性和方法,要想继承就要使用extends关键字。当然了在使用时还需注意一些问题,如(1)类只支持继承,不允许多重继承,也就是说一个类只能有一个直接父亲。(2)而多层继承是可以的,即一个类的父亲可以再去继承另外的父类,例如,C类继承自B类,而B类又可以去继承A类,这时,C类也可称作A类的子类。(3)子类和父类是一种相对的概念,也就是说一个类是某个类的同时,也可以是另一个类的子类。

class A();
class B extends A();  //类B继承类A,类B继承类A的子类。
class C extends B();  //类B继承类A,类B继承类A的子类,同时也是类A的子类。

这些是继承性的特点,其例子就不一一展示出来了。

抽象类的使用:是用来进行类型隐藏,可以确认一些方法的实现,不包含方法体的方法为抽象方法,抽象方法必须使用abstract关键字来修饰。例如下面实例就是使用abstract关键字修饰的类为抽象类:

//定义抽象类Animal
abstract class Animal{
//定义抽象方法shout()
abstract int shout();
}

当然了,抽象类是不可以被实例化的,因为抽象类可能包含着抽象方法,抽象方法是没有方法体,不可以被调用,。如果想要调用抽象类中定义的方法,则需要创建一个字类,在子类中将抽象类中的抽象方法进行实现。而abstract修饰符在修饰类时必须放在类名前,修饰方法就是要求其子类覆盖(现实)这个方法。需要注意的是,当有抽象方法的类一定是抽象类,但是,抽象类中不一定都是抽象方法,也可以全是具体方法

如果一个抽象类中所有的方法都是抽象的,则可以将这个类用另一个方法来表示,那就是接口。接口是由常量和抽象方法组成的特殊类,是对抽象类的进一步抽象,需要使用interface关键字来声明,在Java中使用接口的目的是为了克服单继承的限制,因为一个类只能有一个父亲,而一个类可以有好几个接口,如果接口中的变量默认使用”public static final”来修饰时,即全局变量;如果接口中的变量默认使用”publicabstract”来修饰时,即抽象方法;如果接口声明public,则接口中定义的变量和方法全部为public。要实现接口中的方法就要使用implements关键字。其例子就不列出来,要想深刻的认识接口就必须了解它的特点。

(1)  接口中的方法都是抽象的,不能够实例化对象。

(2)  接口中的属性只能是常量。

(3)  当一个类实现接口时,如果这个类是抽象类,则实现接口中的部分方法即可,否则需要实现接口中的所有方法。

(4)  一个类通过implements关键字实现接口时,可以实现多个接口,被实现的多个接口之间需要逗号隔开。

(5)  一个接口可以通过extends关键字继承多个接口,接口之间用逗号隔开。

(6)  一个类继承另一个类的同时还可以实现接口,此时,extends关键字必须位于implements关键字之前。就是先继承,后接口。

所以,这些就是我写的一些知识,不是很好,好多例子没有展现出来,希望能可以理解。

最近学习计划(1个星期)

好久不来了,来一次就要努力做好计划! 1.搞定GRE单词2.视频编码技术深入了解3.用ssh框架实现一个简单的社交平台4.android使用数据库开发一个gre学习软件5.认真研读Tmuc 争取早日出...
  • CsuPrince
  • CsuPrince
  • 2011-03-01 02:31:00
  • 172

冬令营第一周工作总结及计划表

周工作总结及计划表 部    门 重庆理工大学 姓    名 李家康 入 职 时 间 2015.1.24 本周已完成工作内容及总结    1. 完成了C语言...
  • Tell_me_why1228
  • Tell_me_why1228
  • 2015-02-01 21:48:37
  • 779

这个星期的错误总结反思

今天把这个星期遇到的错题整理一下。 错题1:       #!/bin/bash      for file in *.c     do           leftname=basenam...
  • hjf161105
  • hjf161105
  • 2016-11-18 22:35:16
  • 186

匆匆那年之Java程序员之最近两周的面试总结:

匆匆那年之Java程序员之最近两周的面试总结: (一):匆匆那年之来帝都之初: 还记得那是2011年的冬天,我们一行20多个同学一起来到了这个一直向往的城市首都,刚到北京是凌晨4点30,负...
  • sxdtzhaoxinguo
  • sxdtzhaoxinguo
  • 2015-07-30 19:48:59
  • 963

记录一下这一个星期的面试经历吧

由于出国的事情因为自己成绩不理想外加家庭环境负担不起
  • github_16421799
  • github_16421799
  • 2014-10-31 10:32:37
  • 909

巧算星期几

 巧算星期几 基姆。拉尔森基姆拥有计算机学科的博士学位。他对数据库,算法和数据结构有着浓厚的兴趣。他的联系地址是            (原文为丹麦文--译者注) 31,DK-5270,Odense ...
  • ycrao
  • ycrao
  • 2000-11-24 16:32:00
  • 8269

实习两星期工作总结

现在是早上十点半,从九点开始上班到现在也就一个半小时的时间,但是今天的感觉就是有点烦了,因为连续不断地看了好几天的书,我一直以来的看书习惯就是一本书能在多块解决就多快解决,就想当初《计算机网络》,就是...
  • u012247462
  • u012247462
  • 2014-12-11 15:48:15
  • 1145

Map知识点总结

Map的相关总结: **Map:顶层接口,该集合存储的是键值对,而且键是唯一的,Map和Set很像,Set集合底层就是使用了Map集合。         Map集合没有迭代器,要取出元素必须先...
  • fan510988896
  • fan510988896
  • 2017-03-30 15:33:50
  • 303

大数据知识总结

1、YARN:只负责程序运行所需资源的分配回收等调度任务,与应用程序的内部运行机制无关,所以 YARN已经成为一个通用的资源调度平台,许许多多的运算框架都可以借助它来实现资源管理,比如: MR/SPA...
  • qq_27657429
  • qq_27657429
  • 2017-02-02 10:39:43
  • 762
收藏助手
不良信息举报
您举报文章:一个星期的知识总结
举报原因:
原因补充:

(最多只允许输入30个字)