自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 资源 (4)
  • 收藏
  • 关注

原创 上下文无关文法和语言

1.文法及语言的形式表示每一门编程语法都是有它自己的语法的,实际上,任何程序均可以看做是一定字符集上的一个字符串,而判定一个字符串是否为一个程序上合法的程序,其依据的则是语言的文法。语言的文法是一组规则,包含词法规则和语法规则。词法规则是描述语言单词符号构成规则的。单词符号包括:标识符、常数、运算符等。词法规则的描述工具通常为正规文法(正规式、有限自动机)。语法规则是描述语言语法单位构成规则的。语法单位包括:表达式、语句、函数、过程等。语法规则的描述工具常为:上下文无关文法。文法是描述语言结构的形

2020-05-26 16:46:35 4506

原创 Java面向对象编程——包的定义与使用

一、包的定义由于我们现在的项目大多数是不可能一个人完成的,往往是多人协同完成,因此可能会出现类的重名定义。其实包就相当于我们电脑或手机上的文件目录,将程序文件放在包下,不同的包中,可以出现相同的类名,这样就解决了类的重名问题,方便对类的管理。在Java中定义包的语句如以下程序所示:package com.test.first;需要注意的是:包定义必须放在类的首行一旦程序之中有包,那么程序编译后的结果就必须将*.class文件保存在指定的目录之中,这时我们可以使用打包编译处理:javac

2020-12-30 13:03:16 725

原创 Java面向对象编程——泛型

目录一、定义一个Point泛型,如以下程序:实例化Point类,如以下程序:关于默认的泛型类型:由于泛型是JDK1.5之后的产物,但是在此之前有不少的内置程序类或者是接口广泛应用在项目开发之中,为保证这些类或接口在追加了泛型之后,原始的类依然可以使用,所以如果没有设置泛型的类型,自动将使用Object作为类型以保证程序的正常执行,但是在编译中会出现警告。泛型的使用注意点:1.泛型之中只允许设置引用类型,如果现在要操作的基本类型,必须使用包装类;2.从JDK1.7开始,泛型对象实例化可以简化为

2020-12-29 16:53:19 309

原创 Java面向对象编程——抽象类与接口的区别

在实际的开发中,抽象类和接口的定义形式是非常相似的,尤其是JDK1.8之后,因为在JDK1.8之后,在接口里面也可以定义default或static方法了。但是两者仍有定义和使用区别,下面是两者之间的一个比较:抽象类和接口的区别 NO 区别 抽象类 接口 1 定义 abstract class name{} interface name{} 2 组成 构造方法、抽象方法、静态方法、全局常量、普通常量 抽象方法、全局常量、普通方法、sta

2020-12-28 17:58:50 329

原创 Java面向对象编程——代理设计模式(Proxy)

代理设计模式的主要功能是可以帮助用户将所有的开发注意力只集中在核心业务功能的处理上。比如你现在还是一个孩子,你上学、吃饭、买衣服得花钱,而你现在又没有经济能力,那么你会怎么办?会找你的爸爸妈妈要对不对。这里你的爸妈就充当了一个帮你赚钱的代理。你呢只关心有没有钱,钱从哪来你是不会关心的,而你的爸爸妈妈就得操心这钱从哪里来,可能是借的、打工赚的、卖血赚的等等。我没可以做如下程序设计:interface IMoney//接口{ public abstract void getMoney();

2020-12-28 17:35:53 125

原创 Java面向对象编程——工厂设计模式(Factory)

观察如下程序(主要观察Main方法):interface IPerson//定义一个人的标准{ public abstract void think();//思考 public abstract void learn();//学习}class Man implements IPerson{ public void think()//思考 { System.out.println("思考怎么赚钱"); } public void learn()//学习 { System.o

2020-12-28 16:52:06 183

原创 Java面向对象编程——接口定义与使用

1.接口基本定义接口是一组抽象方法、常量和内嵌类型的集合。接口是一种数据结构,采用抽象形式来描述约定,因此接口只有被类实现后才有意义。使用关键字interface声明接口,程序如下:interface IArea{ public static final double PI=3.14; public abstract double area();}声明接口说明:>>>接口中成员变量都是常量,声明时必须赋值,默认修饰符public static final.

2020-12-28 16:05:50 404

原创 Java面向对象编程——抽象性:抽象类的定义与使用

抽象类的主要作用是对子类中覆写的方法进行约定,在抽象类中可以定义一些抽象方法以实现这样的约定。抽象方法是使用了abstract关键字修饰的并且没有提供具体方法体的方法,而抽象方法所在的类必须为抽象类,抽象类也必须使用absract关键字来修饰。如下是一个抽象类的程序:abstract class Person{ private static String language="汉语"; private String name; private int age; private

2020-12-28 13:18:01 1128

原创 Java面向对象编程——多态性:方法、对象的多态性

多态性是面向对象编程中四大特性之一,多态性是在继承性的基础上扩展出来的概念,可以实现父子类之间的转换处理。在Java中主要有方法的多态性和对象的多态性。方法的多态性:方法实现不同的功能>>>方法的重载:同一个名称的方法可以根据传入的参数类型和个数的不同而实现不同的功能的执行。>>>方法的覆写:同一个名称的方法可能根据子类的不同有不同的实现。对象的多态性:父子类之间的转换处理>>>对象向上转型:父类 父类实例=子类实例 /...

2020-12-18 16:26:31 2701

原创 Java面向对象编程——Annotation简介

Annotation是JDK1.5以后提出的一个新的开发技术结构,利用Annotation可以有效的减少程序配置的代码,并进行一些结构化的定义,实际上就是一种以注解的形式实现的程序开发。以前我们开发程序分为三个过程:过程一:在程序定义的时候将所有可能使用到的资源全部定义在程序代码之中,比如IP地址等。此时如果IP地址变化,那么就需要进行源代码的修改,维护需要由开发人员来进行。过程二:引入配置文件,在配置文件中定义全部要使用到的服务器等资源,在配置项目不多时非常好用,但如果所有配置项目都这样使用就

2020-12-18 15:14:22 242

原创 Java面向对象编程——JavaDoc文档简介

在实际的项目开发之中,我们会大量的使用Java的API文档(JavaDoc)这个文档可以通过oracle的在线文档进行查看。如Java中String类的API文档在JDK1.9之前,所有的Java中的类库都会在JVM启动的时候进行全部的加载,这样会降低程序的性能在JDK1.9之后开始提供模块化的设计,将一些程序放在了不同的模块中。一般文档里面的组成会有以下几个部分:类的完整定义类的相关说明成员属性摘要构造方法摘要方法摘要:左边为返回值,右边为方法名称和相应

2020-12-17 16:14:17 2173

原创 Java面向对象编程——主方法组成分析

Java中的主方法组成是非常复杂的,而且单词也很多:public static void main(String args [ ] )public:描述的是一种公开的访问权限,主方法是一切的开始点,因此一定是公开的static:程序的执行是通过类名称来调用的,该关键字表示此方法是由类直接调用的void:主方法是一切的起点,没有返回的可能是main:是一个心跳定义好的方法名称String args[]:字符串数组,可以实现程序启动参数的接收比如:输出启动参数public cla.

2020-12-17 15:38:49 156

原创 Java面向对象编程——String类简单介绍

String类也就是字符串类,字符串严格来讲不能算是一个基本数据类型,也就是说没有哪一门语言会提供有字符串这种数据类型,而Java为了方便开发者进行项目的编写,利用JVM的支持制造了一种可以简单使用的String类。并且可以像基本数据类型一样进行直接的赋值处理。String类的实例化:>>>直接赋值:String = "字符串";>>>构造方法:new String("字符串");String类中之所以可以保存字符串最主要的原因是其中定义了一个数组,在St

2020-12-17 15:27:07 315

原创 Java面向对象编程——二维数组的定义与使用

二维数组其实就是数组的数组,类似于一个矩阵,一张二维表。二维数组定义语法:>>>动态初始化:数据类型 数组名 [ ] [ ] =new 数据类型 [行数] [列数];>>>静态初始化:数据类型 数组名[ ] [ ] =new 数据类型 [ ] [ ] {{数据,数据,……},{数据,数据,……},{……}};例如以下程序:public class Demo{ public static void main(String args[]){ i..

2020-12-17 12:17:05 365 1

原创 Java面向对象编程——数组中使用for-each迭代循环语句

我们知道,在Java中有时对数组操作不当就会造成异常,尤其是对数组下标的操作,为此Java引入了for-each语句,以方便我们得到数组中的每一个元素。语法格式:for(数据类型 变量 :数组|集合){}//表示将数组或集合中的元素依次赋值给变量例如:public class Demo{ public static void main(String args[]){ int array []=new int[10]; for(int i :array) System.out.p

2020-12-17 10:55:22 307

原创 Java面向对象编程——数组的引用传递分析

通过数组的基本定义我们可以发现,在数组的使用过程中依然需要使用关键字new进行内存空间的开辟。下面我们对数组的创建和使用过程进行内存分析。例如有以下程序:public class Demo{ public static void main(String args[]){ int array []=new int[10]; for(int i=0;i<array.length;i++) { array[i]=i; System.out.print(array[i]+"

2020-12-17 10:42:31 146

原创 Java面向对象编程——数组的基本定义与使用

数组是具有相同数据类型的元素的有序集合。声明并初始化动态数组:》》》数据类型 数组名称 []=new 数据类型 [长度]》》》数据类型 [] 数组名称=new 数据类型 [长度]比如:public class Demo{ public static void main(String args[]){ int array1 []=new int [10]; array1[0]=2;//通过数组名和下标赋值 System.out.println(array1[0]);//通过

2020-12-16 09:51:11 224

原创 Java面向对象编程——5代码块

在Java程序中,使用“{}”定义的结构就称为代码块,根据代码块出现的位置以及关键字的不同,代码块可以分为普通代码块、构造块、静态块、同步代码块(多线程时讲解)。1.普通代码块普通代码块主要是定义在一个方法之中的代码块。比如如下代码,if语句块中的就是普通代码块public class Demo{ public static void main(String args[]){ if(true){ int x=10; System.out.println(x++); }

2020-12-14 21:04:19 134

原创 Java面向对象编程-——4Static关键字

static是Java中的一个关键字,可以用来修饰属性和方法,可以用来自动命名。1.static修饰成员属性static修饰的成员属性是属于这个类的,也就是说这个属性是这个类的公共属性,即所有实例对象共享这一个存储单元的值,那么即使没有创建实例,也可以通过类名访问静态成员属性。如Person类中,语言为汉语是这个类的公共属性 private static String language="汉语";注意:我们在编程中,95%的情况下使用的都是实例成员属性,只有5%的情况下才用static

2020-12-14 20:32:38 116

原创 Java面向对象编程——3-1简单Java类

简单Java类是指可以描述一类信息的程序类,比如一个学生、一个老师、一个员工等,并且在类中没有特别复杂的逻辑操作,只作为一种信息存储的媒介。对于简单Java类而言,其核心的开发结构如下:1.类名称要有明确的意义,可以准确的描述某一类事物;2.类中的所有属性都要使用private进行修饰封装,封装后的属性一定要提供set和get方法;3.类中可以有多个构造方法,但必须提供无参构造方法;4.类中不允许出现任何的输出语句,所有内容的获取必须返回;5.可以提供一个获取对象详细信息的方法。

2020-12-14 17:22:24 180

原创 Java面向对象编程——3this关键字的详细使用

this算是Java中比较令人头痛的一个关键字,因为this的使用形式决定了它的灵活性。它可以进行三类结构的描述:>>>本类中属性:this.属性;>>>本类中的方法(构造方法、普通方法):this(),this.方法名称();>>>描述当前对象。1.this调用本类属性class Person{ private String name; private int age; public void setName(Strin

2020-12-14 16:38:07 176

原创 Java面向对象编程——2-2构造方法与匿名对象

在Java中,我们要使用一个对象就得先完成对象的实例化,而通常实例化对象,我们使用类的构造函数。构造函数一般分为有参构造函数和无参构造函数。其中无参构造函数是程序在编译时自动创建的。有参构造函数的定义如下: public Person(String n,int a){ name=n; age=a; }注意:一旦定义了有参构造函数,那么无参构造函数将不会再自动创建。因此常规的做法是,无参构造函数和有参构造函数都写上。有人会发现这个构造函数怎么没有返回值类型?是的,构造方

2020-12-14 15:48:36 70

原创 Java面向对象编程——2-1成员属性封装

在类之中的组成就是成员与方法,一般而言方法都是对外提供服务的,因此不会有较高的安全性,这时就需要采用封装性对属性进行保护。比如如下代码,未对类中的属性进行封装:class Person{ String name; int age;}public class Demo{ public static void main(String args[]){ Person per=new Person(); per.name="猪八戒"; System.out.println(per

2020-12-14 14:43:56 124 1

原创 Java面向对象编程——1-6引用传递与垃圾产生分析

在Java编程中,传递引用是经常会使用到的,有时会造成垃圾的产生,那么垃圾是如何产生的呢?下面我们来简单分析一下:假定我们有如下代码:public class Person{ String name; int age; public void setName(String name){ this.name=name; } public String getName(){ return name; } public static void main(String args[])

2020-11-29 18:19:07 112

原创 Java面向对象编程——1-5对象引用分析

Java中,类本身属于引用数据类型,既然是引用数据类型,那么就牵扯到内存的引用传递,其实引用传递的本质就是:同一块对内空间可以被不同的栈内存所指向,也可以更换指向。比如以下代码:public static void main(String args[]){ Person per1=new Person(); Person per12=per;//引用传递 per1.name="张三"; per1.age=18; System.out.println(per2.getName()

2020-11-29 18:02:07 133

原创 Java面向对象编程——1-4对象内存分析

Java之中类属于引用数据类型,引用数据类型的最大困难之处在于要进行内存的管理,同时在进行操作的时候也会有内存关系的一个变化,因此,我们针对程序的内存关系进行一些简单的分析。首先给出两块最为常用的空间:堆内存:保存的是对象的具体信息,在程序之中堆内存的开辟是通过new来完成的;栈内存:保存的是一块堆内存的地址,即通过地址找到堆内存,而后找到对象内容。...

2020-11-29 17:30:01 102

原创 mfc中没有Micrisoft ADO Data控件怎么办?

在我们使用MFC ADO数据库访问技术的时候经常要使用Micrisoft ADO Data Control6.0和Micrisoft DataGrid控件,但是我们会发现我们的vc6.0中点击插入ActiveX控件,如下图所示,并没有Micrisoft ADO Data Control6.0这个控件那么我们该怎么办呢?其实,可以这样解决。1.查看电脑上是否有如下两个文件:MSDATGRD.OCX和MSADODC.OCX文件32位系统在C:\Windows\System32目录下查看;64位.

2020-10-19 21:59:19 236

原创 vc6.0中没有Micrisoft ADO Data Control6.0控件怎么办

在我们使用MFC ADO数据库访问技术的时候经常要使用Micrisoft ADO Data Control6.0和Micrisoft DataGrid控件,但是我们会发现我们的vc6.0中点击插入ActiveX控件,如下图所示,并没有Micrisoft ADO Data Control6.0这个控件那么我们该怎么办呢?其实,可以这样解决。1.查看电脑上是否有如下两个文件:MSDATGRD.OCX和MSADODC.OCX文件32位系统在C:\Windows\System32目录下查看;64位.

2020-10-19 21:57:36 539

原创 ActiveX控件不能示例解决方法

在进行mfc编程的时候我们可能遇到这样的情况,插入ActiveX控件时弹出如下提示:遇到这种情况,我们可以这样解决!1.查看电脑上是否有如下两个文件:MSDATGRD.OCX和MSADODC.OCX文件32位系统在C:\Windows\System32目录下查看;64位系统在C:\Windows\SysWOW64目录下查看。如果目录下没有这两个文件,那么就需要下载,链接如下:MSADODC.COX下载 MSDATGRD.OCX下载下载好之后,将下载的文件根据...

2020-10-19 21:17:13 1084

原创 类与对象的定义及使用(超经典)

在Java中,类是一个独立的结构体,所以需要使用class来进行定义,而在类中,主要由属性和方法组成,属性就是一个个具体的变量,方法就是可以重复执行的代码。定义一个类:public class Person{ String name;//属性 int age; public void setName(String name){//方法 this.name=name; } public String getName(){ return name; }}有了类之后,我们该如何

2020-10-04 14:20:06 1113

原创 类与对象关系(深度解析)

类是对某一事物的共性的抽象概念,而对象描述的是一个具体的产物。比如人类是一个抽象的概念吧,人有什么共性呢?是不是有鼻子、有嘴、有手、有脚、有肤色、有眼睛,因此人就可以成为一个类。现在有一个人,它肤色很黑,有两只手、两只脚、一双眼睛,它的名字叫Jack,那么Jack就是一个对象,因为我们把这个人给实例化了,它已经不再抽象,而是具体的一个人,她叫Jack。因此类是一个模板,而对象才是类可以使用的实例,先有类再有对象。类一般会有两个组成部分:1.成员属性(Field):有时候简称其为属性,属性就是

2020-10-04 13:56:41 284

原创 Java面向对象程序设计的四大核心特性及开发步骤

Java语言最大的特点就是面向对象设计,并且面向对象编程设计也在于Java自身发展而不断发展,同时很多最初不支持面向对象编程也都开始转向了面向对象编程,但是依然有许多的开发者认为面向对象是不完善的,而面向过程会比较好,或者说使用函数式编程比较好。最早并且一直到先在都在流行的编程语言C、C++、Java,其中C语言已经变成面向过程开发的一个代表,而C++、Java都是面向对象的一个编程语言。所谓面向过程是指面对一个问题的解决方案,更多的情况下,是不会做出重用的设计思考,而面向对象的的设计方式是模块化设

2020-10-04 13:33:31 997

原创 Java方法的定义与使用及递归小试牛刀

、在我们写程序的的过程中,很多情况下是需要重复执行一些代码的,在一些书上也会把方法(method)称为函数(function)。当然在进行方法定义的时候有一个前提:方法在主类中定义,并且由主方法直接调用。1.方法的定义:public static 返回数据类型([形参类型 变量1,形参类型 变量2,……]){//方法要执行的代码[return 返回值];//返回数据类型可以使用Java中定义的数据类型(基本数据类型和引用数据类型)}注:如果方法不需要返回值,那么方法前的返回数据类..

2020-10-04 11:51:35 210

原创 mfc打包发布自己的程序给别使用

很多时候我们想将直接编写的MFC程序给别人使用,但是对方并没有安装vc6.0环境,那么我们只需要打包我们的程序,发给对方就可以直接打开了。下面是教程1.点击左上角工程--->设置--->左上角选择Win 32 Release,选择常规,使用MFC作为静态链接库,然后确定2.点击左上角组建--->批组建,在Win 32 Release前面打上对号,在Win 32 Debug前面不打对号没,然后点击创建3.找到我们工程所在目录,找到Release文件夹,双击进入,直接点击e

2020-10-02 12:19:24 2185

原创 ADO数据库访问技术

1.ADO简介ADO(ActiveX Data Objects,ActiveX 数据对象)是Microsoft提出的基于组件的面向对象的应用程序接口,可以实现访问关系或非关系数据库中的数据。2.ADO中3个基本接口_ConnectionPtr //连接对象指针:可以创建一个数据连接或执行一条不返回任何结果的SQL语句,如一个存储过程,它的连接字符串可以直接写,也可以指向一个ODBC DSN;_RecordsetPtr //记录集对象指针:提供对记录集的控制功能,如记录锁存,游标控制等;.

2020-10-02 11:36:09 604

原创 mfc使用ado连接数据库

1.设置数据源打开控制面板--->系统和安全--->管理工具--->ODBC Data Sources(32 bit)这里需要注意的是,vc6.0是32位的,因此这里的数据源也必须是32位的,否则是连接不上的,这里我使用的是ACCESS数据库,数据源的配置如下:2.创建包含数据库的MFC对话框(其它也可以)工程,新建ADOConn类在工程中我们需要新建一个普通类ADOConn然后在ADOConn类头文件中加入以下导入声明和变量、函数声明:ADOConn.

2020-10-02 11:19:09 1230

原创 mfc使用ado连接access数据库

1.设置数据源打开控制面板--->系统和安全--->管理工具--->ODBC Data Sources(32 bit)这里需要注意的是,vc6.0是32位的,因此这里的数据源也必须是32位的,否则是连接不上的,这里我使用的是ACCESS数据库,数据源的配置如下:2.创建包含数据库的MFC对话框(其它也可以)工程...

2020-10-02 11:14:34 1103 1

原创 MFC颜色调配 | vc++6.0颜色设置,如何修改控件颜色

效果展示1.新建一个MyEdit类,该类继承自CEdit类,并添加相关变量和函数;在MyEdit类的头文件(.h)中定义如下变量和函数:private: COLORREF m_BackgroundColor;//背景颜色 COLORREF m_TextColor;//文本颜色 CBrush m_brushBk;//笔刷public: void SetBackgroundColor(COLORREF color);//设置背景颜色 void SetTextColor(CO

2020-09-29 18:35:10 3318

原创 mfc快捷键设置 | vc++6.0热键设置

1.先在我们对话框的头文件中添加消息的ID #define WM_MYHOTKEY WM_USER+1000 //在这里我们需要知道为了防止用户定义的消息ID与系统的消息ID冲突,MS(Microsoft)定义了一个宏WM_USER,小于WM_USER的ID被系统使用,大于WM_USER的ID被用户使用。...

2020-09-28 18:56:52 874 1

原创 vc++6.0/使用VisualC++6.0创建MFC基本对话框程序制作数字钟表教程

我们先看一下数字钟表的效果图1.首先,我们先创建一个基本对话框程序,不会的可以点这里:使用Visual C++6.0创建MFC工程单文档、多文档、对话框界面;2.自定义一个对话框类,该类是继承自我们所有对话框的基类(父类)CDialog的,不会的可以参考:如何在MFC中实现自定义对话框类;3.为2中自定义的对话框添加上相应的控件;...

2020-09-27 11:36:59 8055 3

ActiveX控件不能示例解决办法所需的文件包含MSADODC.ocx 和 MSDATGRD.ocx 以及新建文本文档.reg文件.zip

ActiveX控件不能示例解决办法使用到的文件包含MSADODC.ocx 和 MSDATGRD.ocx 以及新建文本文档.reg文件,“Microsoft Chart Control 6.0(sp4)(OLEDB)"不能例示, 因为它需要一个设计时间许可。解决方法

2020-10-19

mfc快速查询、ADO技术访问数据库

mfc中使用ADO技术访问数据库,mfc编程实现快速查询,vc6.0实现ADO技术,快速查询实验,mfc快速查询、ADO技术访问数据库

2020-10-02

mfc数字钟表、快捷键设置、颜色匹配实验

用于mfc编程实现数字钟表、快捷键设置、颜色匹配实验等内容,可以直接双击使用,点击即可运行,用于课设等非常合适。

2020-10-02

vc6.0mfc项目

mfc快捷键设置、mfc数字钟表制作、mfc颜色调配,使用vc++6.0制作快捷键设置、数字中标制作、颜色调配。

2020-09-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除