Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Komma åt underklasser

Postades av 2005-12-27 14:46:59 - Magnus Gustafson, i forum asp.net generellt, Tråden har 12 Kommentarer och lästs av 568 personer

Har lite problem med ett funktionsanrop

<code>
Imports projektnamn.clsSqlSatser
</code>
använder jag för inherits är redan upptagen med en ennana class.
Nere i en sub sedan så försöker jag ropa på funktionen som ligger i clsSqlSatser
<code>
strSQL = sqlSats(strSQL)
</code>
Det han säger som fel är "referens till en icke-delad medlem kräver en object-referens". Jag har provat lite olika varianter men inte fått det att fungera, någon som ha ett möjligt förslag på lösning? Det bästa hade ju varit att kunna ha flera Inherits men man måste ju kunna hänvisa till fler än en class.


Svara

Sv: Komma åt underklasser

Postades av 2005-12-27 17:14:38 - Peter Ilis

Tror kanske att du har blandat ihop saker och ting här..

Arv används för att justera en klass men innebörden av klassen ska ändå vara detsamma.

En specialkund är en typ av kund och kan därför använda arv.
En rektangel är en typ av form och kan därför använda arv.
etc.

Imports används för att förenkla/förkorta kod. När du skriver imports projektnamn.clsSqlSatser innebär det att du skapar en "genväg" till namnrymden projektnamn.clsSqlSatser.
Detta påverkar inte den klass du skriver i mer än att du slipper skriva projektnamn.clsSqlSatser.KlassX och istället direkt kan skriva KlassX.

Felet beror på, precis som felet säger, att du inte instansierat klassen som funktionen finns i och att den därför måste vara delad (shared) för att användas.

Mvh
Peter I


Svara

Sv:Komma åt underklasser

Postades av 2005-12-27 19:42:41 - Magnus Gustafson

Ibland är jag lite knäpp som inte tänker längre än näsan räcker till märker jag.

Om jag nu vill ha med denna klass hur gör jag då eftersom det inte går att använda mer än en Inherits.

I tidigare projekt har jag nämligen bara använt en, men den här gången tänkte jag strukturera upp det så jag få en class med classnamn till det jag vill ha. Till exempel sql-satser ska vara i en class osv...


Svara

Sv: Komma åt underklasser

Postades av 2005-12-28 12:53:54 - östen petersson

arv använder du bara om du ska utöka/utveckla en existerande systemklass
du behöver ju inte ärva för att använda systemklasserna

imports använder du bara om du är för lat för att skriva hela "sökvägen"


Svara

Sv:Komma åt underklasser

Postades av 2005-12-28 13:35:04 - Magnus Gustafson

Imports fungerar inte, det är då felet kommer. Men på något sätt så måste det ju gå att ärva från mer än en klass.


Svara

Sv: Komma åt underklasser

Postades av 2005-12-28 13:41:08 - Martin Adrian

Varför pratar du om arv hela tiden?

Inte för att jag förstår så mycket av vad du försöker göra men om clsSqlSatser är en klass som har en metod som heter sqlSats så borde det väl vara så här?

Imports projektnamn

clsSqlSatser obj
strSQL = obj.sqlSats(strSQL)


Svara

Sv:Komma åt underklasser

Postades av 2005-12-28 13:56:31 - Martin Emanuelsson

Testa att antingen sätta funktionen sqlSats som shared, typ:

<code>
public shared function sqlSats(...parametrar...)
</code>

och anropa den sen som du gör just nu, alltså utan att instantiera ett objekt av klassen clsSqlSatser...

Eller instantiera ett objekt av klassen clsSqlSatser och anropa sen funktionen sqlSats från det här objektet, typ:

<code>
dim obj as clsSqlSatser
obj = new clsSqlSatser
obj.sqlSats(...parametrar...)
</code>

Är inte heller riktigt med på varför du är inne på arv i det här fallet utan testa nåt av det jag beskriver ovan, borde funka...


Svara

Sv: Komma åt underklasser

Postades av 2005-12-29 10:20:58 - Göran Andersson

> Men på något sätt så måste det ju gå att ärva från mer än en klass.

Nej, det går inte i .NET, eftersom alla klasser ärver ifrån Object.


Svara

Sv:Komma åt underklasser

Postades av 2005-12-29 21:38:53 - Patrik Löwendahl

Nja det är inte därför det inte går.

Snarare så att om den <i>inte</i> ärver från från något så kommer den alltid att ärva från object. Men det hindrar inte multiple inheritance (MI)

Man har gjort ett design val att inte stödja MI eftersom de fall när man enligt best practice OOD verkligen behöver det är extremt få och inte tillräckligt viktiga för att brottas med den problematik som följer med med multipla arv.


Svara

Sv: Komma åt underklasser

Postades av 2005-12-30 08:27:59 - Per Persson

Så Object är inte rotbasklass till alla klasser?


Svara

Sv:Komma åt underklasser

Postades av 2005-12-30 11:47:31 - Patrik Löwendahl

jo, den är <b>rotbas</b> men den ärvs inte av alla klasser direkt och därför påverkar inte det ML på ngt sätt.


Svara

Sv: Komma åt underklasser

Postades av 2005-12-31 02:05:32 - stefan persson

När ska man använda arv och när ska man använda sig av variabler(eller objekt)?
Arv ska man använda när det är frågan om är. Tex Cresent är en cykel.
för objekt eller instans variabler gäller har istället för är, Tex Cresent cykeln har en viss dimension på kedjan, Styret har en viss tjocklek osv.


Svara

Sv:Komma åt underklasser

Postades av 2005-12-31 11:10:57 - Patrik Löwendahl

Jag skulle iofs hävda att cresent var en cykels märke. Dvs ett attribut på cykeln ;)


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 604
27 953
271 705
6 019
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies