php实例化

$this->DBServer = $db_server; 那么形像的来描述 $this->DBServer 是什么样的东西? 子类调用父类中的某一个方法 都是用 $this->xxx 实例化来调用的吗?
不太明白!
能不能解释清楚点你说的?
$this->name=name;//这个也正确?

class pre{
public function Recordcount($SQL)
{
$SQLType = substr(strtolower($SQL),0,6);
if($SQLType == "select")
{
$this->Record = mysql_query($SQL,$this->Conn);
$arr_nums = mysql_num_rows($this->Record);
return $arr_nums;
}
}
}

class news extends pre{
public function shownews{
$sql="...";
$arr = $this->Recordcount($SQL);//这不是调用父类中的方法吗?
return $arr;
}
}

有几个书写错误,现在已经订正!
$arr = $this->GetRecord($SQL);//这不是调用父类中的方法吗?
我跟你说过,什么叫继承,就是说子类拥有父类的所有成员(在可继承的情况下),你可以通过作用域连接符使用父类成员,也可以通过$this关键字(静态的,私有的不行!!!!!)!!!!!!!

怎样来认识面向对象编程:
给你举个例子:
class student{
public $name;
public statics $age;
public function set_name($name){
$this->name=$name;//这是正确的
self::$name=$name;//正确
$name=$name;//这句错误
}
public function set_age($age){
$this->age=$age;//错误
self::$age=$age;//正确
}
}
//为什么会这样呢,也就是说,如果你要在类里面另外的成员,那么你就要通过
//$this关键字,或者作用域解析符,但是如果是静态成员,不能使用$this访问,来引用它,不能像普通的代码一样直接使用.
$this->name你可以这样理解,学生的名字,也就是说$this代表的就是类名

class boy_student extents students{
//这个类扩展自students,也就是说有students类的所有成员,
//当然你也可以添加students没有的成员
$aadress;
:
:
:
//如果你要应用父类的方法:可以这样:
parent::set_name(....)
//当然这里涉及到的东西足足可以写成一本书,不是说有的父类成员都能子类访问,有些甚至连继承都不行,这里涉及到可见性的问题!
}

*********************************
$this->xxx 实例化来调用的吗?
*******************************
这不是实例化,什么叫实例化,就是说,刚才我们定义的是一个抽象的东西,就像学生,他是一个类别;
$zhangshan = new students();
这才是实利化,明白吗!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-01-20
1.PHP可以在类里面实例化自身,因为在类的内部我们可以使用$this来实现对自身的引用。但是也许在某些特别的设计中,你需要实例化自身,那么确实是可以做到的,就像在类外部实例化一下,下面的代码展示了这一过程:
<?php
class test{
var $b=’1′;
function in_self(){
$a=new test();
echo $a->b;
}
}
$t= new test();
$t->in_self();
?>
2. PHP_对象的实例化
<?php

/*如何实例化对象

* $对象名=new 类名称()

*

*

*

*

*

*

*

* */

class Person

{

//成员属性

var $name;

var $age;

var $sex;

var $phone;

//成员方法

function say()

{

echo"我在说话";

}

function run()

{

echo"我在走路";

}

function eat()

{

echo "我在吃饭";

}

function work()

{

echo "我在工作";

}

function study()

{

}

}

class Phone

{

var $manufacturers;

var $color;

var $size;

function call()

{

}

function answerCall()

{

}

function sendMessage($person,$message)

{

$person->phone->recieveMessage($message);

}

function recieveMessage($message)

{

echo "接收的信息是:".$message."<br>";

}

function playMusic()

{

}

}

$p1=new Person();

$p2=new Person();

$p3=new Person();

$phone1=new Phone();

$phone2=new Phone();

$phone3=new Phone();

$p1->name="张三";

$p2->name="李四";

$p3->name="王五";

$phone1->manufacturers="nokia";

$phone2->manufacturers="semmens";

$phone3->manufacturers="samsung";

$p1->phone=$phone1;

$p2->phone=$phone2;

$p3->phone=$phone3;

$p1->phone->sendMessage($p2,"hello");

/* $p1->say();

$p2->eat();

$p3->run(); */

?>
3.
第2个回答  2020-07-13
1.PHP可以在类里面实例化自身,因为在类的内部我们可以使用$this来实现对自身的引用。但是也许在某些特别的设计中,你需要实例化自身,那么确实是可以做到的,就像在类外部实例化一下,下面的代码展示了这一过程:
?php
class
test{
var
$b=’1′;
function
in_self(){
$a=new
test();
echo
$a-
b;
}
}
$t=
new
test();
$t->in_self();
?>
2.
PHP_对象的实例化
?php
/*如何实例化对象
*
$对象名=new
类名称()
*
*
*
*
*
*
*
*
*/
class
Person
{
//成员属性
var
$name;
var
$age;
var
$sex;
var
$phone;
//成员方法
function
say()
{
echo"我在说话";
}
function
run()
{
echo"我在走路";
}
function
eat()
{
echo
"我在吃饭";
}
function
work()
{
echo
"我在工作";
}
function
study()
{
}
}
class
Phone
{
var
$manufacturers;
var
$color;
var
$size;
function
call()
{
}
function
answerCall()
{
}
function
sendMessage($person,$message)
{
$person-
phone->recieveMessage($message);
}
function
recieveMessage($message)
{
echo
"接收的信息是:".$message."
";
}
function
playMusic()
{
}
}
$p1=new
Person();
$p2=new
Person();
$p3=new
Person();
$phone1=new
Phone();
$phone2=new
Phone();
$phone3=new
Phone();
$p1->name="张三";
$p2->name="李四";
$p3->name="王五";
$phone1->manufacturers="nokia";
$phone2->manufacturers="semmens";
$phone3->manufacturers="samsung";
$p1->phone=$phone1;
$p2->phone=$phone2;
$p3->phone=$phone3;
$p1->phone->sendMessage($p2,"hello");
/*
$p1->say();
$p2->eat();
$p3->run();
*/
?>
3.
第3个回答  2020-07-01
给你举个例子吧:
比如说:现在有user.class.php
mysql.class.php
现在用户类有注册、登录等一系列的操作(要使用数据库类)
我们直接在user.class.php
中把数据库类给实力化了
这样就了可以达到你的那个效果了;
千万不要在将所有的方法放在一个类中,这样是不好做法,住好是一个类只对于他本身的方法;这样做的目的是让逻辑更加清晰,和降低服务器的资源消耗。
第4个回答  2016-01-12
new 一个 对象

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网