发表于: 2018-03-07 23:42:07

2 741


今天完成的事情:

一、 因为task17中涉及了interface的概念,所以今天先把接口的内容看了一遍。

1.接口

a.接口就是一个标准,一个协议,一个规范。一个功能的封装。

b.接口定义语法:

 [修饰符]   interface   接口名称{

        //抽象方法

       //静态方法

       //default方法

       //final static 常量

}

c.类实现接口语法:

   class   类名   implements   接口名称{

       //类实现了接口,需要重写接口中的所有方法

}

d.使用接口原因:Java中的类只支持单继承。多继承的一个方法就是使用接口,另外一个方法就是成员内部类;接口可以起到规范,标准的作用。

e.接口中的方法默认使用public abstract修饰,故无方法体。

f.任意一个类实现接口,重写接口的所有抽象功能后,就具有了接口的功能。

g.一个类可以在继承一个类的同时继承一个接口,先继承类再继承接口。

h.一般一个接口只封装一个功能,但是也可以封装多个功能,只是需要重写所有方法。

i.因为接口是java的一种引用数据类型,所以其可以定义变量,但是却不能实例化对象。定义的引用指向实现类的对象,通过接口引用调用方法,从而实现接口多态。

j.接口不仅可以继承还可以实现多继承,在继承其他接口功能后还可以添加自己特有的功能。

2.抽象类和接口比较

a.相同点:

①.都可以有抽象方法。

②.都不能实例化对象。

③.都可以含有静态成员。

b.不同点:

①.含义不同:抽象类用于表示其他类的父类;接口是一个功能的封装,一个标准。

②.定义方法不同:抽象类使用abstract class;接口使用interface.

③.内容不同:抽象类可以有抽象方法,还可以有包含普通类中所有成员;接口可以包含静态常量,抽象方法,静态方法,default方法。

④.使用方法不同:抽象类是在现有基础上进一步抽象出的类,用作父类;接口是功能的封装,需要通过类实现接口。

⑤.应用场景不同:如果仅仅是功能的扩展,选择接口;如果除了功能之外还有其他数据,或是为了表示类之间的层次关系,或是为了约束子类的方法,则使用抽象类。

二、任务相关知识学习

因为学习得过程有些一知半解,所以回过头来将一些基本概念整理一下

1.代码:程序员利用开发工具编写出来的为了实现某个具体操作的源文件,以某种通用的规则记载着信息。

2.项目:为了某个明确目的而形成的代码的规律集合。

3.项目管理工具:为了使项目能在可控范围内按计划进行而对项目进行管理的工具,其目的是为了让多个项目管理起来更简单方便。

4.IDEA:集成了包括编译器,调试器,项目管理工具等各种辅助编写代码处理项目的工具的编辑器。可以使程序员编写管理更便捷有效。

5.Maven:通过标准化,清晰化,简单化的方式来共享管理jar的一个项目管理工具。jar的作用是通过别人已经明确定义的项目方式来描述自己的项目,主要是为了节约程序员构建基层源码的时间。

6.maven的作用:主要是用仓库体系管理jar包。若某项目构建依赖的jar包在本地仓库,就可自动调用出来,若是本地仓库没有,就可以通过一个共享的中央仓库在网上寻找。即它可以帮你自动寻找下载需要的jar包,连同此jar包依赖的jar包一起下载下来。同时它也有将自己的项目打包成jar包等其他相关功能。

7.maven的项目主要结构

src/main/java:项目的源代码所在目录

src/main/resouces:项目的资源文件所在目

src/main/filters:项目的资源过滤文件所在目录

src/main/webapp:web应用源代码所在目录,比如html文件和xml文件

src/test/java:测试代码所在目录

src/test/resouces:测试相关的资源文件所在目录

src/test/filters:测试相关的资源过滤文件所在目录

src/it:集成测试代码所在目录,主要是供别的插件使用的

src/assembly:组件描述符所在的目录

src/site:站点文件

target:用于存放项目构建的输出文件,比如class文件以及打包后的包文件等

pom.xml:项目对象描述文件,包含项目对象的属性和方法配置。

8.settings.xml文件:使用maven时和仓库相关的配置涉及此文件。主要包括配置本地仓库默认地址,配置maven中央仓库位置,包括修改下载地址。

9.pom.xml文件构成:①pom.xml对象②坐标属性,描述文件在仓库中的具体位置③项目依赖列表属性④构建过程中使用插件的属性⑤项目聚合属⑥父子项目属性

可以使用pom.xml文件导入jar包,在mavenrepository.com里直接找到需要的包,copy参数到pom.xml里面的指定位置

三、任务相关

先按照教程写了一个通过jdbc连接数据库的半成品

public class JdbcTest {
public  static void main(String[]args) throws SQLException {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection c= DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test","root","1024");
System.out.println("连接成功,获取连接对象:"+c);
}catch (ClassNotFoundException e){
e.printStackTrace();
}
}
}

大概看了下jdbc连接数据库的操作流程,和Jdbc中常用的类和接口


明天计划的事情:

继续学习jdbc连接数据库的方法,然后搞清楚jdbctemplate的概念及作用还有写法。



遇到的问题:

因为之前在maven上的理解不到位,所以以为idea中创建的maven项目需要自己手动导入包,还去问师兄为啥没有lib文件夹,被师兄骂了一顿才发现自己犯了多蠢的错误,所以按照师兄要求梳理总结了一下maven方面的知识,虽然还不是很到位,但是起码对为啥没有lib包这种问题可以自己得到答案了,其实是可以在操作界面左侧的External Libraries里看到,比如我手动下载并导入了mysql5.0.8,以及师兄帮我使用pom.xml文件导入的mysql5.1.31

然后关于类的导入,当时自己写的时候,死活不对,getCollection下面一直报错,其实是导入包和方法不对,需要学会看看报错信息,利用快捷键处理提示。


收获:

对maven的理解更深一层(其实主要是以前是一知半解状态)

对jdbc有一个大概的概念,还需要加深理解




返回列表 返回列表
评论

    分享到